SqlConnection.Open 메서드

정의

에서 지정 ConnectionString한 속성 설정을 사용하여 데이터베이스 연결을 엽니다.

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

구현

예외

데이터 원본 또는 서버를 지정하지 않고 연결을 열 수 없습니다.

또는

연결이 이미 열려 있습니다.

연결을 여는 동안 연결 수준 오류가 발생했습니다. 속성 값 Number 이 18487 또는 18488인 경우 지정된 암호가 만료되었거나 다시 설정해야 했음을 나타냅니다. ChangePassword(String, String) 자세한 내용은 메서드를 참조하세요.

<system.data.localdb>app.config 파일의 태그에 유효하지 않거나 알 수 없는 요소가 있습니다.

섹션에는 이름이 같은 두 개의 항목이 있습니다 <localdbinstances> .

예제

다음 예제에서는 만들고 SqlConnection, 열고, 일부 속성을 표시합니다. 연결은 블록의 끝에서 자동으로 닫힙니다 using .

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);
    }
}
Private Sub OpenSqlConnection(ByVal connectionString As String)
    Using connection As New SqlConnection(connectionString)
        connection.Open()
        Console.WriteLine("ServerVersion: {0}", connection.ServerVersion)
        Console.WriteLine("State: {0}", connection.State)
    End Using
End Sub

설명

SqlConnection 연결 풀을 사용할 수 있는 경우 연결 풀에서 열린 연결을 그립니다. 그렇지 않으면 SQL Server 인스턴스에 대한 새 연결을 설정합니다.

메모

SqlConnection 범위를 벗어나면 닫혀 있지 않습니다. 따라서 을 호출 Close하여 연결을 명시적으로 닫아야 합니다.

메모

SQL Server 인스턴스에 연결하고 TCP/IP 이외의 프로토콜을 사용할 때 1433 이외의 포트 번호를 지정하면 Open 메서드가 실패합니다. 1433 이외의 포트 번호를 지정하려면 연결 문자열 "server=machinename,port number"를 포함하고 TCP/IP 프로토콜을 사용합니다.

메모

SQL Server 대한 .NET Framework Data Provider SQL 디버깅을 사용하도록 설정된 열기 위해 "관리되지 않는 어셈블리에 대한 호출 허용"이 설정된 보안 권한( 로 설정된 >

적용 대상

추가 정보