Поделиться через


SqlConnection.Open Метод

Определение

Перегрузки

Open()

Открывает подключение к базе данных со значениями свойств, определяемыми объектом ConnectionString.

Open(SqlConnectionOverrides)

Открывает подключение к базе данных со значениями свойств, определяемыми объектом ConnectionString.

Open()

Открывает подключение к базе данных со значениями свойств, определяемыми объектом ConnectionString.

public:
 override void Open();
public override void Open ();
override this.Open : unit -> unit
Public Overrides Sub Open ()

Исключения

Невозможно открыть подключение без указания источника данных или сервера.

or

Подключение уже открыто.

При открытии подключения произошла ошибка на уровне подключения. Если свойство Number содержит значение 18 487 или 18 488, это означает, что действие указанного пароля истекло или что пароль должен быть сброшен. Дополнительные сведения см. в описании метода ChangePassword(String, String) .

Тег <system.data.localdb> в файле app.config имеет недопустимые или неизвестные элементы.

В разделе <localdbinstances> присутствуют две записи с одинаковым именем.

Примеры

В следующем примере создается SqlConnection, открывается и отображаются некоторые его свойства. Соединение автоматически закрывается в конце using блока.

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;";
    }
}

Комментарии

извлекает SqlConnection открытое подключение из пула подключений, если оно доступно. В противном случае устанавливается новое подключение к экземпляру SQL Server.

Примечание

Если соединение SqlConnection выходит из области видимости, то его закрытие не производится. Поэтому необходимо явно закрыть соединение, вызвав .Close

Примечание

Если при попытке подключиться к экземпляру SQL Server и по протоколу, отличному от TCP/IP, указан номер порта, отличный от 1433, метод завершается ошибкойOpen. Чтобы указать номер порта, отличный от 1433, включите в строку подключения "server=machinename, номер порта" и используйте протокол TCP/IP.

Примечание

Поставщик данных платформа .NET Framework для SQL Server требует разрешения "Безопасность" с включенным параметром "Разрешает вызовы неуправляемых сборок" (SecurityPermissionс SecurityPermissionFlag параметром ), UnmanagedCodeчтобы открыть объект с включенной отладкой SqlConnection SQL.

Применяется к

Open(SqlConnectionOverrides)

Открывает подключение к базе данных со значениями свойств, определяемыми объектом 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)

Параметры

overrides
SqlConnectionOverrides

Параметры переопределения поведения открытия подключения по умолчанию.

Исключения

Невозможно открыть подключение без указания источника данных или сервера.

or

Подключение уже открыто.

При открытии подключения произошла ошибка на уровне подключения. Если свойство Number содержит значение 18 487 или 18 488, это означает, что действие указанного пароля истекло или что пароль должен быть сброшен. Дополнительные сведения см. в описании метода ChangePassword(String, String) .

Тег <system.data.localdb> в файле app.config имеет недопустимые или неизвестные элементы.

В разделе <localdbinstances> присутствуют две записи с одинаковым именем.

Примеры

В следующем примере создается SqlConnection, открывается и отображаются некоторые его свойства. Соединение автоматически закрывается в конце using блока.

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;";
    }
}

Комментарии

извлекает SqlConnection открытое подключение из пула подключений, если оно доступно. В противном случае устанавливается новое подключение к экземпляру SQL Server. Если указаны переопределения, первая попытка открытия применит указанные переопределения к действию открытия.

Примечание

Если соединение SqlConnection выходит из области видимости, то его закрытие не производится. Поэтому необходимо явно закрыть соединение, вызвав .Close

Примечание

Если при попытке подключиться к экземпляру SQL Server и по протоколу, отличному от TCP/IP, указан номер порта, отличный от 1433, метод завершается ошибкойOpen. Чтобы указать номер порта, отличный от 1433, включите в строку подключения "server=machinename, номер порта" и используйте протокол TCP/IP.

Примечание

Поставщик данных платформа .NET Framework для SQL Server требует разрешения "Безопасность" с включенным параметром "Разрешает вызовы неуправляемых сборок" (SecurityPermissionс SecurityPermissionFlag параметром ), UnmanagedCodeчтобы открыть объект с включенной отладкой SqlConnection SQL.

Применяется к