Partilhar via


Estabeleça uma conexão

Para se conectar ao Microsoft SQL Server, use o SqlConnection objeto do Provedor de Dados do .NET Framework para SQL Server. Para se conectar a uma fonte de dados OLE DB, use o OleDbConnection objeto do provedor de dados .NET Framework para OLE DB. Para se conectar a uma fonte de dados ODBC, use o OdbcConnection objeto do provedor de dados .NET Framework para ODBC. Para se conectar a uma fonte de dados Oracle, use o OracleConnection objeto do .NET Framework Data Provider for Oracle. Para armazenar e recuperar cadeias de conexão com segurança, consulte Protegendo informações de conexão.

Fechando conexões

Recomendamos que você sempre feche a conexão quando terminar de usá-la, para que a conexão possa ser retornada ao pool. O Using bloco em Visual Basic ou C# automaticamente descarta a conexão quando o código sai do bloco, mesmo no caso de uma exceção não tratada. Consulte a using declaração e Using a declaração para obter mais informações.

Você também pode usar os Close métodos ou Dispose do objeto de conexão para o provedor que você está usando. As conexões que não são fechadas explicitamente podem não ser adicionadas ou retornadas ao pool. Por exemplo, uma conexão que saiu do escopo, mas que não foi fechada explicitamente, só será retornada ao pool de conexões se o tamanho máximo do pool tiver sido atingido e a conexão ainda for válida. Para obter mais informações, consulte OLE DB, ODBC e Oracle Connection Pooling.

Nota

Não chame Close ou Dispose em um Connection, um DataReader ou qualquer outro objeto gerenciado no Finalize método de sua classe. Em um finalizador, libere apenas recursos não gerenciados que sua classe possui diretamente. Se sua classe não possui recursos não gerenciados, não inclua um Finalize método em sua definição de classe. Para obter mais informações, consulte Coleta de lixo.

Nota

Os eventos de login e logout não serão gerados no servidor quando uma conexão for buscada ou retornada ao pool de conexões, porque a conexão não será realmente fechada quando for retornada ao pool de conexões. Para obter mais informações, consulte Pool de conexões do SQL Server (ADO.NET).

Ligar ao SQL Server

O Provedor de Dados do .NET Framework para SQL Server oferece suporte a um formato de cadeia de conexão semelhante ao formato de cadeia de conexão OLE DB (ADO). Para nomes e valores de formato de cadeia de caracteres válidos, consulte a ConnectionString SqlConnection propriedade do objeto. Você também pode usar a SqlConnectionStringBuilder classe para criar cadeias de conexão sintaticamente válidas em tempo de execução. Para obter mais informações, consulte Construtores de cadeias de conexão.

O exemplo de código a seguir demonstra como criar e abrir uma conexão com um banco de dados do SQL Server.

' Assumes connectionString is a valid connection string.
Using connection As New SqlConnection(connectionString)
    connection.Open()
    ' Do work here.
End Using
// Assumes connectionString is a valid connection string.
using (SqlConnection connection = new SqlConnection(connectionString))
{
    connection.Open();
    // Do work here.
}

Segurança e ASP.NET Integradas

A segurança integrada do SQL Server (também conhecida como conexões confiáveis) ajuda a fornecer proteção ao se conectar ao SQL Server, pois não expõe uma ID de usuário e senha na cadeia de conexão e é o método recomendado para autenticar uma conexão. A segurança integrada usa a identidade de segurança atual, ou token, do processo em execução. Para aplicativos de desktop, essa é normalmente a identidade do usuário conectado no momento.

A identidade de segurança para ASP.NET aplicativos pode ser definida como uma das várias opções diferentes. Para entender melhor a identidade de segurança que um aplicativo ASP.NET usa ao se conectar ao SQL Server, consulte ASP.NET Representação, Autenticação ASP.NET e Como acessar o SQL Server usando a Segurança Integrada do Windows.

Conectar-se a uma fonte de dados OLE DB

O Provedor de Dados do .NET Framework para OLE DB fornece conectividade com fontes de dados expostas usando OLE DB (por meio de SQLOLEDB, o provedor OLE DB para SQL Server), usando o objeto OleDbConnection .

Para o provedor de dados .NET Framework para OLE DB, o formato de cadeia de conexão é idêntico ao formato de cadeia de conexão usado no ADO, com as seguintes exceções:

  • A palavra-chave Provider é necessária.

  • As palavras-chave URL, Remote Provider e Remote Server não são suportadas.

Para obter mais informações sobre cadeias de conexão OLE DB, consulte o ConnectionString artigo. Você também pode usar o OleDbConnectionStringBuilder para criar cadeias de conexão em tempo de execução.

Nota

O objeto OleDbConnection não oferece suporte à configuração ou recuperação de propriedades dinâmicas específicas de um provedor OLE DB. Somente as propriedades que podem ser passadas na cadeia de conexão para o provedor OLE DB são suportadas.

O exemplo de código a seguir demonstra como criar e abrir uma conexão com uma fonte de dados OLE DB.

' Assumes connectionString is a valid connection string.
Using connection As New OleDbConnection(connectionString)
    connection.Open()
    ' Do work here.
End Using
// Assumes connectionString is a valid connection string.
using (OleDbConnection connection =
  new OleDbConnection(connectionString))
{
    connection.Open();
    // Do work here.
}

É possível fornecer informações de conexão para um OleDbConnection em um arquivo UDL (Universal Data Link ), no entanto, você deve evitar fazê-lo. Os ficheiros UDL não são encriptados e expõem informações da cadeia de ligação em texto não codificado. Como um arquivo UDL é um recurso baseado em arquivo externo para seu aplicativo, ele não pode ser protegido usando o .NET Framework.

Conectar-se a uma fonte de dados ODBC

O Provedor de Dados do .NET Framework para ODBC fornece conectividade a fontes de dados expostas usando ODBC usando o objeto OdbcConnection .

Para o Provedor de Dados do .NET Framework para ODBC, o formato da cadeia de conexão foi projetado para corresponder o mais possível ao formato da cadeia de conexão ODBC. Você também pode fornecer um nome de fonte de dados ODBC (DSN). Para obter mais detalhes sobre o OdbcConnection , consulte o OdbcConnection.

O exemplo de código a seguir demonstra como criar e abrir uma conexão com uma fonte de dados ODBC.

' Assumes connectionString is a valid connection string.
Using connection As New OdbcConnection(connectionString)
    connection.Open()
    ' Do work here.
End Using
// Assumes connectionString is a valid connection string.
using (OdbcConnection connection =
  new OdbcConnection(connectionString))
{
    connection.Open();
    // Do work here.
}

Conectar-se a uma fonte de dados Oracle

O Provedor de Dados do .NET Framework para Oracle fornece conectividade com fontes de dados Oracle usando o objeto OracleConnection .

Para o Provedor de Dados do .NET Framework para Oracle, o formato da cadeia de conexão foi projetado para corresponder o mais possível ao formato de cadeia de conexão do Provedor OLE DB para Oracle (MSDAORA). Para obter mais detalhes sobre o OracleConnection, consulte o OracleConnection.

O exemplo de código a seguir demonstra como criar e abrir uma conexão com uma fonte de dados Oracle.

' Assumes connectionString is a valid connection string.
Using connection As New OracleConnection(connectionString)
    connection.Open()
    ' Do work here.
End Using
// Assumes connectionString is a valid connection string.
using (OracleConnection connection =
  new OracleConnection(connectionString))
{
    connection.Open();
    // Do work here.
}

Consulte também