Visual Basic 6 - ADO - Preencher um DataGrid com os dados de um recordset


O DataGrid é um novo controle vinculado no VB6 que permite trabalhar com a ADO. É muito simples usar o DataGrid para exibir os dados oriundos de uma conexão ADO. Vamos mostrar aqui como preencher um DataGrid com o conteúdo de um recordset.

Para incrementar mais o exemplo vamos permitir que o usuário forneça , através de uma expressão SQL qual será a fonte dos dados a serem exibidos.

Ao informar a fonte de dados iremos ativar o serviço OLE DB para que a conexão seja criada definindo o provedor e o banco de dados a ser utilizado. Após criar a string de conexão , se houver a tabela informada no banco de dados , os registros serão exibidos no DataGrid. Mãos a obra...

Para que o exemplo funcione você deve fazer duas referências no projeto:

No formulário padrão insira o controle DataGrid , uma caixa de texto e dois botões de comando como na figura abaixo:

 

Ao clicar no botão de comando - Criar uma conexão com o Banco de dados - iremos ativar o serviço OLE DB para criar a conexão .

Informe o nome do provedor adequado a fonte de dados que estiver usando e clique no botão Avançar >>

A seguir informe a localização e o nome da fonte de dados e clique em OK.

Pronto !

O DataGrid será preenchido com os dados da tabela indicada.

Para o nosso caso , veja abaixo, mostramos os dados da tabela Publishers do banco de dados Biblio.mdb.

Abaixo um exemplo sendo exibido:

Quer ver o código ? Não se assuste , são poucas linhas...

Option Explicit
'*****************************************************************************
' Referencias :
' ActiveX Data Objects 2.X
' Microsoft OLE DB service component
'*****************************************************************************

Private ConnctionString$
Private SQL$

'Preenche o grid
Private Sub Preenche_Grid()
Dim adoRs As New ADODB.Recordset
Dim adocn As New ADODB.Connection

adocn.CursorLocation = adUseClient
adocn.Open ConnctionString$

'abre a conexao
adoRs.Open SQL$, adocn, adOpenStatic
'define a fonte de dados para a conexao ativa
Set DataGrid1.DataSource = adoRs

'libera a conexao
Set adoRs = Nothing
Set adocn = Nothing
End Sub


Private Sub cmdConString_Click()

'se houver erro continua no proximo comando
On Error Resume Next

Dim msDLink As New DataLinks

'avisa o usuário caso a instrução sql não foi fornecida
If txtConstring.Text = "" Then
   MsgBox "Informe uma instrução SQL . Ex : Select * From <tabela> ", vbOKOnly
   Exit Sub
Else
  'define a string de conexão
  ConnctionString$ = msDLink.PromptNew
  SQL$ = txtConstring.Text
  Call Preenche_Grid
End If

End Sub

Private Sub cmdExit_Click()
  Unload Me
End Sub

Impressionante !!! não é mesmo ... 

As linhas destacadas em azul são as mais importantes no  código...

Tenha uma boa madrugada...

Veja os Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique e confira !

Quer migrar para o VB .NET ?

Quer aprender C# ??

Quer aprender os conceitos da Programação Orientada a objetos ?

Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ?

Quer aprender a criar aplicações Web Dinâmicas usando a ASP .NET MVC 5 ?


  Gostou
?   Compartilhe no Facebook   Compartilhe no Twitter

 

Referências:


José Carlos Macoratti