SqlConnection.Open Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
Open() |
Abre uma conexão de banco de dados com as configurações de propriedade especificadas pelo ConnectionString. |
Open(SqlConnectionOverrides) |
Abre uma conexão de banco de dados com as configurações de propriedade especificadas pelo ConnectionString. |
Open()
Abre uma conexão de banco de dados com as configurações de propriedade especificadas pelo ConnectionString.
public:
override void Open();
public override void Open ();
override this.Open : unit -> unit
Public Overrides Sub Open ()
Exceções
Não é possível abrir uma conexão sem especificar uma fonte de dados ou servidor.
ou
A conexão já está aberta.
Ocorreu um erro no nível da conexão ao abrir a conexão. Se a propriedade Number contiver o valor 18487 ou 18488, isso indicará que a senha especificada expirou ou precisa ser redefinida. Consulte o método ChangePassword(String, String) para obter mais informações.
A marca <system.data.localdb>
no arquivo app.config tem elementos inválidos ou desconhecidos.
Há duas entradas com o mesmo nome na seção <localdbinstances>
.
Exemplos
O exemplo a seguir cria um SqlConnection, abre-o e exibe algumas de suas propriedades. A conexão é fechada automaticamente no final do using
bloco.
using Microsoft.Data.SqlClient;
class Program1
{
static void Main()
{
string s = GetConnectionString();
OpenSqlConnection(s);
Console.ReadLine();
}
private static void OpenSqlConnection(string connectionString)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
Console.WriteLine("ServerVersion: {0}", connection.ServerVersion);
Console.WriteLine("State: {0}", connection.State);
}
}
static private string GetConnectionString()
{
// To avoid storing the connection string in your code,
// you can retrieve it from a configuration file, using the
// System.Configuration.ConfigurationSettings.AppSettings property
return "Data Source=(local);Initial Catalog=AdventureWorks;"
+ "Integrated Security=SSPI;";
}
}
Comentários
O SqlConnection desenha uma conexão aberta do pool de conexões se houver uma disponível. Caso contrário, ele estabelecerá uma nova conexão com uma instância do SQL Server.
Observação
Se o SqlConnection sair do escopo, ele não será fechado. Portanto, você deve fechar explicitamente a conexão chamando Close.
Observação
Se você especificar um número de porta diferente de 1433 quando estiver tentando se conectar a uma instância do SQL Server e usando um protocolo diferente de TCP/IP, o Open método falhará. Para especificar um número de porta diferente de 1433, inclua "server=machinename, número da porta" na cadeia de conexão e use o protocolo TCP/IP.
Observação
O provedor de dados .NET Framework para SQL Server requer a permissão segurança com "Permite chamadas para assemblies não gerenciados" habilitado (SecurityPermission com definido UnmanagedCode
como SecurityPermissionFlag ) para abrir um SqlConnection com a Depuração do SQL habilitada.
Aplica-se a
Open(SqlConnectionOverrides)
Abre uma conexão de banco de dados com as configurações de propriedade especificadas pelo ConnectionString.
public:
void Open(Microsoft::Data::SqlClient::SqlConnectionOverrides overrides);
public void Open (Microsoft.Data.SqlClient.SqlConnectionOverrides overrides);
override this.Open : Microsoft.Data.SqlClient.SqlConnectionOverrides -> unit
Public Sub Open (overrides As SqlConnectionOverrides)
Parâmetros
- overrides
- SqlConnectionOverrides
Opções para substituir o comportamento de abertura de conexão padrão.
Exceções
Não é possível abrir uma conexão sem especificar uma fonte de dados ou servidor.
ou
A conexão já está aberta.
Ocorreu um erro no nível da conexão ao abrir a conexão. Se a propriedade Number contiver o valor 18487 ou 18488, isso indicará que a senha especificada expirou ou precisa ser redefinida. Consulte o método ChangePassword(String, String) para obter mais informações.
A marca <system.data.localdb>
no arquivo app.config tem elementos inválidos ou desconhecidos.
Há duas entradas com o mesmo nome na seção <localdbinstances>
.
Exemplos
O exemplo a seguir cria um SqlConnection, abre-o e exibe algumas de suas propriedades. A conexão é fechada automaticamente no final do using
bloco.
using Microsoft.Data.SqlClient;
class Program1
{
static void Main()
{
string s = GetConnectionString();
OpenSqlConnection(s);
Console.ReadLine();
}
private static void OpenSqlConnection(string connectionString)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
Console.WriteLine("ServerVersion: {0}", connection.ServerVersion);
Console.WriteLine("State: {0}", connection.State);
}
}
static private string GetConnectionString()
{
// To avoid storing the connection string in your code,
// you can retrieve it from a configuration file, using the
// System.Configuration.ConfigurationSettings.AppSettings property
return "Data Source=(local);Initial Catalog=AdventureWorks;"
+ "Integrated Security=SSPI;";
}
}
Comentários
O SqlConnection desenha uma conexão aberta do pool de conexões se houver uma disponível. Caso contrário, ele estabelecerá uma nova conexão com uma instância do SQL Server. Se as substituições forem especificadas, a primeira tentativa aberta aplicará as substituições especificadas à ação aberta.
Observação
Se o SqlConnection sair do escopo, ele não será fechado. Portanto, você deve fechar explicitamente a conexão chamando Close.
Observação
Se você especificar um número de porta diferente de 1433 quando estiver tentando se conectar a uma instância do SQL Server e usando um protocolo diferente de TCP/IP, o Open método falhará. Para especificar um número de porta diferente de 1433, inclua "server=machinename, número da porta" na cadeia de conexão e use o protocolo TCP/IP.
Observação
O provedor de dados .NET Framework para SQL Server requer a permissão segurança com "Permite chamadas para assemblies não gerenciados" habilitado (SecurityPermission com definido UnmanagedCode
como SecurityPermissionFlag ) para abrir um SqlConnection com a Depuração do SQL habilitada.