Neste tópico veremos alguns dos objetos importantes do ADO tais como “Connection” e “Recordset” assim como propriedades e métodos destes objetos os quais utilizamos para efetuar tarefas em nosso banco de dados. Você pode checar o primeiro artigo sobre ADO ADOX (ActiveX Data Objects).
Inicio pela conexão, pois nós precisamos de uma conexão aberta para abrir conjuntos de registros (recordsets) e efetuar operações em registros e tabelas como inserção, exclusão e edição de registros.
Vejamos então como abrir uma conexão em ADO.
Via de regra, para abrir um conexão ADO nós utilizamos o método Open de um objeto Connection. A parte importante aqui é a string de conexão. Conforme já explicado, podemos obter tal string diretamente do banco de dados através da propriedade Connection do objeto CurrentProject. Feito isso, basta copiar a string para utilização no seu projeto Excel.
Uma outra alternativa é utilizar um Data Link. Data Link será discutido mais adiante no curso.
Se a fonte de dados muda, então uma string é mais apropriada, pois não está ligada a uma fonte específica, bastando apenas adaptar conforme necessário (ou criar uma função para retornar a string dado certos parâmetros). De qualquer modo, a decisão final ficará a cargo mesmo de quem programa.
Para abrir a conexão podemos utilizar o seguinte código:
Sub conexao()
Dim cn As ADODB.Connection
Dim strCn As String
strCn = "Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;"
strCn = strCn & "Data Source=C:\Northwind.mdb;"
Set cn = New ADODB.Connection
cn.Open strCn
End Sub
Note que acima, primeiramente declaramos o objeto, em seguida o instanciamos e finalmente o abrimos utilizando o método Open do objeto Connection para abrir a conexão. Uma alternativa a isso é simplesmente declarar e instanciar ao meu tempo e logo a seguir abrir a conexão:
Sub conexao()
Dim cn As New ADODB.Connection
Dim strCn As String
strCn = "Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;"
strCn = strCn & "Data Source=C:\Northwind.mdb;"
cn.Open strCn
End Sub
Uma vez que a conexão esteja aberta e tenhamos terminado o seu uso, nós precisamos fazer duas coisas com ela:
1.Fechá-la
2.Limpá-la da memória
Para fechar uma conexão nós utilizamos o método Close do objeto. Para limpar o objeto da memória nós o setamos como sendo Nothing (nada):
cn.Close
Set cn = Nothing
Portanto, o processo completo entre declaração, abertura, fechamento e limpeza da conexão ficará:
Sub conexao()
Dim cn As New ADODB.Connection
cn.Open strCn
' Executaremos algo neste espaço
cn.Close
Set cn = Nothing
End Sub
Agora que o leitor já sabe como efetuar os passos acima, vejamos como abrir um recordset (conjunto de registros) o qual depende de uma conexão aberta para ser viável.