Compartilhar via


Objeto Connection (ADO)

Representa uma conexão aberta com uma fonte de dados.

Comentários

Um objeto Connection representa uma sessão exclusiva com uma fonte de dados. Em um sistema de banco de dados de cliente/servidor, isso pode ser equivalente a uma conexão de rede real com o servidor. Dependendo da funcionalidade à qual o provedor dá suporte, algumas coleções, métodos ou propriedades de um objeto Connection podem não estar disponíveis.

Com as coleções, os métodos e as propriedades de um objeto Connection, você pode fazer o seguinte:

  • Configure a conexão antes de abri-la com as propriedades ConnectionString, ConnectionTimeout e Mode. ConnectionString é a propriedade padrão do objeto Connection.

  • Defina a propriedade CursorLocation como o cliente para invocar o Serviço de Cursor da Microsoft para OLE DB, que dá suporte a atualizações em lote.

  • Defina o banco de dados padrão para a conexão com a propriedade DefaultDatabase.

  • Defina o nível de isolamento para as transações abertas na conexão com a propriedade IsolationLevel.

  • Especifique um provedor OLE DB com a propriedade Provider.

  • Estabeleça e, posteriormente, interrompa a conexão física com a fonte de dados usando os métodos Open e Close.

  • Execute um comando na conexão com o método Execute e configure a execução com a propriedade CommandTimeout.

    Observação

    Para executar uma consulta sem usar um objeto Command, transmita uma cadeia de consulta para o método Execute de um objeto Connection. No entanto, um objeto Command é necessário quando você deseja persistir o texto do comando e executá-lo novamente ou usar parâmetros de consulta.

  • Gerencie as transações na conexão aberta, incluindo transações aninhadas se o provedor der suporte a elas, com os métodos BeginTrans, CommitTrans e RollbackTrans e a propriedade Attributes.

  • Revise os erros retornados da fonte de dados com a coleção Errors.

  • Leia a versão da implementação do ADO usada com a propriedade Version.

  • Obtenha as informações de esquema sobre seu banco de dados com o método OpenSchema.

Você pode criar objetos Connection independentemente de qualquer outro objeto já definido.

Você pode executar comandos nomeados ou procedimentos armazenados como se eles fossem métodos nativos em um objeto Connection, conforme mostrado na próxima seção. Quando um comando nomeado tem o mesmo nome de um procedimento armazenado, a invocação da "chamada de método nativa" em um objeto Connection sempre executa o comando nomeado em vez do procedimento do repositório.

Observação

Não use esse recurso (chamando um comando nomeado ou procedimento armazenado como se fosse um método nativo no objeto Connection ) em um aplicativo do Microsoft .NET Framework, porque a implementação subjacente do recurso entra em conflito com a maneira como o .NET Framework interopera com COM.

Executar um comando como um método nativo de um objeto Connection

Para executar um comando, dê um nome ao comando usando a propriedade Name do objeto Command. Defina a propriedade ActiveConnection do objeto Command como a conexão. Em seguida, emita uma instrução em que o nome do comando é usado como se ele fosse um método no objeto Connection, seguido de qualquer parâmetro e de um objeto Recordset se alguma linha for retornada. Defina as propriedades de Recordset para personalizar o Recordset resultante. Por exemplo:

Dim cnn As New ADODB.Connection  
Dim cmd As New ADODB.Command  
Dim rst As New ADODB.Recordset  
...  
cnn.Open "..."  
cmd.Name = "yourCommandName"  
cmd.ActiveConnection = cnn  
...  
'Your command name, any parameters, and an optional Recordset.  
cnn. "parameter", rst  

Executar um procedimento armazenado como um método nativo de um objeto Connection

Para executar um procedimento armazenado, emita uma instrução em que o nome do procedimento armazenado é usado como se ele fosse um método no objeto Connection, seguido de parâmetros. O ADO fará uma "melhor suposição" dos tipos de parâmetro. Por exemplo:

Dim cnn As New ADODB.Connection  
...  
'Your stored procedure name and any parameters.  
cnn. "parameter"  

O objeto Connection é seguro para scripts.

Esta seção contém o tópico a seguir.

Confira também

Objeto Command (ADO)
Coleção Errors (ADO)
Coleção Properties (ADO)
Objeto Recordset (ADO)
Apêndice A: Provedores