OleDbConnection Classe

Definição

Representa uma conexão aberta com uma fonte de dados.Represents an open connection to a data source.

public ref class OleDbConnection sealed : System::Data::Common::DbConnection, ICloneable, IDisposable
public sealed class OleDbConnection : System.Data.Common.DbConnection, ICloneable, IDisposable
type OleDbConnection = class
    inherit DbConnection
    interface ICloneable
    interface IDbConnection
    interface IDisposable
Public NotInheritable Class OleDbConnection
Inherits DbConnection
Implements ICloneable, IDisposable
Herança
Implementações

Exemplos

O exemplo a seguir cria um OleDbCommand e um OleDbConnection.The following example creates an OleDbCommand and an OleDbConnection. O OleDbConnection é aberto e definido como o Connection para o OleDbCommand.The OleDbConnection is opened and set as the Connection for the OleDbCommand. Em seguida, o exemplo chama ExecuteNonQuery e fecha a conexão.The example then calls ExecuteNonQuery and closes the connection. Para fazer isso, ExecuteNonQuery é passada uma cadeia de conexão e uma cadeia de caracteres de consulta que é uma instrução SQL INSERT.To accomplish this, ExecuteNonQuery is passed a connection string and a query string that is an SQL INSERT statement.

public void InsertRow(string connectionString, string insertSQL)
{
    using (OleDbConnection connection = new OleDbConnection(connectionString))
    {
        // The insertSQL string contains a SQL statement that
        // inserts a new row in the source table.
        OleDbCommand command = new OleDbCommand(insertSQL);

        // Set the Connection to the new OleDbConnection.
        command.Connection = connection;

        // Open the connection and execute the insert command.
        try
        {
            connection.Open();
            command.ExecuteNonQuery();
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
        // The connection is automatically closed when the
        // code exits the using block.
    }
}
Public Sub InsertRow(ByVal connectionString As String, _
    ByVal insertSQL As String)

    Using connection As New OleDbConnection(connectionString)
        ' The insertSQL string contains a SQL statement that
        ' inserts a new row in the source table.
        Dim command As New OleDbCommand(insertSQL)

        ' Set the Connection to the new OleDbConnection.
        command.Connection = connection

        ' Open the connection and execute the insert command.
        Try
            connection.Open()
            command.ExecuteNonQuery()
        Catch ex As Exception
            Console.WriteLine(ex.Message)
        End Try
        ' The connection is automatically closed when the
        ' code exits the Using block.
    End Using
End Sub

Comentários

Um objeto OleDbConnection representa uma conexão exclusiva com uma fonte de dados.An OleDbConnection object represents a unique connection to a data source. Com um sistema de banco de dados cliente/servidor, é equivalente a uma conexão de rede com o servidor.With a client/server database system, it is equivalent to a network connection to the server. Dependendo da funcionalidade suportada pelo provedor de OLE DB nativo, alguns métodos ou propriedades de um objeto OleDbConnection podem não estar disponíveis.Depending on the functionality supported by the native OLE DB provider, some methods or properties of an OleDbConnection object may not be available.

Quando você cria uma instância do OleDbConnection, todas as propriedades são definidas para seus valores iniciais.When you create an instance of OleDbConnection, all properties are set to their initial values. Para obter uma lista desses valores, consulte o Construtor OleDbConnection.For a list of these values, see the OleDbConnection constructor.

Você pode abrir mais de um DataReader em um único OleDbConnection.You can open more than one DataReader on a single OleDbConnection. Se o provedor de OLE DB usado não oferecer suporte a mais de um DataReader em uma única conexão, o provedor abrirá implicitamente uma conexão adicional para cada um.If the OLE DB provider you use does not support more than one DataReader on a single connection, the provider implicitly opens an additional connection for each.

Se o OleDbConnection sair do escopo, ele não será fechado.If the OleDbConnection goes out of scope, it is not closed. Portanto, você deve fechar explicitamente a conexão chamando Close ou Dispose, ou usando o objeto OleDbConnection dentro de uma instrução Using.Therefore, you must explicitly close the connection by calling Close or Dispose, or by using the OleDbConnection object within a Using statement.

Observação

Para implantar aplicativos de alto desempenho, você deve usar o pool de conexões.To deploy high-performance applications, you must use connection pooling. Ao usar o .NET Framework Provedor de Dados para OLE DB, você não precisa habilitar o pool de conexões porque o provedor o gerencia automaticamente.When you use the .NET Framework Data Provider for OLE DB, you do not have to enable connection pooling because the provider manages this automatically. Para obter mais informações sobre como usar o pool de conexões com o .NET Framework Provedor de Dados para OLE DB, consulte OLE DB, ODBC e pool de conexões Oracle.For more information about how to use connection pooling with the .NET Framework Data Provider for OLE DB, see OLE DB, ODBC, and Oracle Connection Pooling.

Se um OleDbException fatal (por exemplo, um nível de severidade de SQL Server de 20 ou superior) for gerado pelo método que executa uma OleDbCommand, o OleDbConnection poderá ser fechado.If a fatal OleDbException (for example, a SQL Server severity level of 20 or greater) is generated by the method executing an OleDbCommand, the OleDbConnection might be closed. No entanto, o usuário pode reabrir a conexão e continuar.However, the user can reopen the connection and continue.

Um aplicativo que cria uma instância do objeto OleDbConnection pode exigir que todos os chamadores diretos e indiretos tenham permissão suficiente para o código definindo as demandas de segurança declarativas ou imperativas.An application that creates an instance of the OleDbConnection object can require all direct and indirect callers to have sufficient permission to the code by setting declarative or imperative security demands. OleDbConnection faz as demandas de segurança usando o objeto OleDbPermission.OleDbConnection makes security demands using the OleDbPermission object. Os usuários podem verificar se o código tem permissões suficientes usando o objeto OleDbPermissionAttribute.Users can verify that their code has sufficient permissions by using the OleDbPermissionAttribute object. Os usuários e os administradores também podem usar o Caspol. exe (ferramenta de política de segurança de acesso ao código) para modificar a política de segurança nos níveis de computador, usuário e empresa.Users and administrators can also use the Caspol.exe (Code Access Security Policy Tool) to modify security policy at the computer, user, and enterprise levels. Para obter mais informações, consulte Segurança de acesso do código e ADO.NET.For more information, see Code Access Security and ADO.NET.

Para obter mais informações sobre como tratar mensagens de aviso e informativas do servidor de dados, consulte eventos de conexão.For more information about handling warning and informational messages from the data server, see Connection Events.

Observação

O objeto OleDbConnection não dá suporte à configuração ou à recuperação de propriedades dinâmicas específicas de um provedor de OLE DB.The OleDbConnection object does not support setting or retrieving dynamic properties specific to an OLE DB provider. Somente as propriedades que podem ser passadas na cadeia de conexão para o provedor OLE DB têm suporte.Only properties that can be passed in the connection string for the OLE DB provider are supported.

Construtores

OleDbConnection()

Inicializa uma nova instância da classe OleDbConnection.Initializes a new instance of the OleDbConnection class.

OleDbConnection(String)

Inicializa uma nova instância da classe OleDbConnection com a cadeia de conexão especificada.Initializes a new instance of the OleDbConnection class with the specified connection string.

Propriedades

CanRaiseEvents

Obtém um valor que indica se o componente pode acionar um evento.Gets a value indicating whether the component can raise an event.

(Herdado de Component)
ConnectionString

Obtém ou define a cadeia de caracteres usada para abrir um banco de dados.Gets or sets the string used to open a database.

ConnectionTimeout

Obtém o tempo de espera (em segundos) durante a tentativa de estabelecimento da conexão antes que a tentativa seja terminada e um erro seja gerado.Gets the time to wait (in seconds) while trying to establish a connection before terminating the attempt and generating an error.

Container

Obtém o IContainer que contém o Component.Gets the IContainer that contains the Component.

(Herdado de Component)
Database

Obtém o nome do banco de dados atual ou o banco de dados a ser usado após uma conexão ser aberta.Gets the name of the current database or the database to be used after a connection is opened.

DataSource

Obtém o nome do servidor ou o nome de arquivo da fonte de dados.Gets the server name or file name of the data source.

DesignMode

Obtém um valor que indica se o Component está no modo de design no momento.Gets a value that indicates whether the Component is currently in design mode.

(Herdado de Component)
Events

Obtém a lista de manipuladores de eventos que estão anexados a este Component.Gets the list of event handlers that are attached to this Component.

(Herdado de Component)
Provider

Obtém o nome do provedor OLE DB especificado na cláusula "Provider=" da cadeia de conexão.Gets the name of the OLE DB provider specified in the "Provider= " clause of the connection string.

ServerVersion

Obtém uma cadeia de caracteres que contém a versão do servidor ao qual o cliente está conectado.Gets a string that contains the version of the server to which the client is connected.

Site

Obtém ou define o ISite do Component.Gets or sets the ISite of the Component.

(Herdado de Component)
State

Obtém o estado atual da conexão.Gets the current state of the connection.

Métodos

BeginTransaction()

Inicia uma transação de banco de dados com o valor IsolationLevel atual.Starts a database transaction with the current IsolationLevel value.

BeginTransaction(IsolationLevel)

Inicia uma transação de banco de dados com o nível de isolamento especificado.Starts a database transaction with the specified isolation level.

ChangeDatabase(String)

Altera o banco de dados atual para um OleDbConnection aberto.Changes the current database for an open OleDbConnection.

Close()

Fecha a conexão com a fonte de dados.Closes the connection to the data source.

CreateCommand()

Cria e retorna um objeto OleDbCommand associado ao OleDbConnection.Creates and returns an OleDbCommand object associated with the OleDbConnection.

CreateObjRef(Type)

Cria um objeto que contém todas as informações relevantes necessárias para gerar um proxy usado para se comunicar com um objeto remoto.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Herdado de MarshalByRefObject)
Dispose()

Libera todos os recursos usados pelo Component.Releases all resources used by the Component.

(Herdado de Component)
Dispose(Boolean)

Libera os recursos não gerenciados usados pelo Component e opcionalmente libera os recursos gerenciados.Releases the unmanaged resources used by the Component and optionally releases the managed resources.

(Herdado de Component)
EnlistDistributedTransaction(ITransaction)

Inscreve-se na transação especificada como uma transação distribuída.Enlists in the specified transaction as a distributed transaction.

EnlistTransaction(Transaction)

Inscreve-se na transação especificada como uma transação distribuída.Enlists in the specified transaction as a distributed transaction.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.Determines whether the specified object is equal to the current object.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.Serves as the default hash function.

(Herdado de Object)
GetLifetimeService()

Recupera o objeto de serviço de tempo de vida atual que controla a política de ciclo de vida para esta instância.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Herdado de MarshalByRefObject)
GetOleDbSchemaTable(Guid, Object[])

Retorna informações de esquema de uma fonte de dados, conforme indicado por um GUID e depois de aplicar as restrições especificadas.Returns schema information from a data source as indicated by a GUID, and after it applies the specified restrictions.

GetSchema()

Retorna informações de esquema para a fonte de dados deste OleDbConnection.Returns schema information for the data source of this OleDbConnection.

GetSchema(String)

Retorna informações de esquema para a fonte de dados deste OleDbConnection usando a cadeia de caracteres especificada para o nome do esquema.Returns schema information for the data source of this OleDbConnection using the specified string for the schema name.

GetSchema(String, String[])

Retorna informações de esquema para a fonte de dados desse OleDbConnection usando a cadeia de caracteres especificada para o nome do esquema e a matriz de cadeia de caracteres especificada para os valores de restrição.Returns schema information for the data source of this OleDbConnection using the specified string for the schema name and the specified string array for the restriction values.

GetService(Type)

Retorna um objeto que representa um serviço fornecido pelo Component ou pelo seu Container.Returns an object that represents a service provided by the Component or by its Container.

(Herdado de Component)
GetType()

Obtém o Type da instância atual.Gets the Type of the current instance.

(Herdado de Object)
InitializeLifetimeService()

Obtém um objeto de serviço de tempo de vida para controlar a política de tempo de vida para essa instância.Obtains a lifetime service object to control the lifetime policy for this instance.

(Herdado de MarshalByRefObject)
MemberwiseClone()

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

(Herdado de Object)
MemberwiseClone(Boolean)

Cria uma cópia superficial do objeto MarshalByRefObject atual.Creates a shallow copy of the current MarshalByRefObject object.

(Herdado de MarshalByRefObject)
Open()

Abre uma conexão de banco de dados com as configurações de propriedade especificadas pelo ConnectionString.Opens a database connection with the property settings specified by the ConnectionString.

ReleaseObjectPool()

Indica que o pool de objetos OleDbConnection pode ser liberado quando a última conexão subjacente é liberada.Indicates that the OleDbConnection object pool can be released when the last underlying connection is released.

ResetState()

Atualiza a propriedade State do objeto OleDbConnection.Updates the State property of the OleDbConnection object.

ToString()

Retorna um String que contém o nome do Component, se houver.Returns a String containing the name of the Component, if any. Esse método não deve ser substituído.This method should not be overridden.

(Herdado de Component)

Eventos

Disposed

Ocorre quando o componente é disposto por uma chamada para o método Dispose().Occurs when the component is disposed by a call to the Dispose() method.

(Herdado de Component)
InfoMessage

Ocorre quando o provedor envia um aviso ou uma mensagem informativa.Occurs when the provider sends a warning or an informational message.

StateChange

Implantações explícitas de interface

ICloneable.Clone()

Para obter uma descrição desse membro, consulte Clone().For a description of this member, see Clone().

IDbConnection.BeginTransaction()

Inicia uma transação de banco de dados.Begins a database transaction.

IDbConnection.BeginTransaction(IsolationLevel)

Inicia uma transação de banco de dados com o nível de isolamento especificado.Begins a database transaction with the specified isolation level.

IDbConnection.CreateCommand()

Cria e retorna um objeto de comando associado com a conexão.Creates and returns a command object associated with the connection.

Aplica-se a

Veja também