閱讀英文

共用方式為


SqlConnection.Open 方法

定義

使用 ConnectionString 所指定的屬性設定,開啟資料庫連接。

C#
public override void Open();
C#
public void Open();

實作

例外狀況

無法在未指定資料來源或伺服器的情況下開啟連接。

連接已經開啟。

開啟連接時發生連接層級的錯誤。 如果 Number 屬性包含值 18487 或 18488,這就表示指定的密碼已過期或必須重設。 如需詳細資訊,請參閱 ChangePassword(String, String) 方法。

app.config 檔案中的 <system.data.localdb> 標記有無效或未知的項目。

<localdbinstances> 區段中有兩個項目同名。

範例

下列範例會 SqlConnection建立 ,並開啟它,並顯示其部分屬性。 聯機會在 區塊結尾 using 自動關閉。

C#
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);
    }
}

備註

如果有的話,會 SqlConnection 從連接集區繪製開啟的連接。 否則,它會建立與 SQL Server 實例的新連線。

注意

SqlConnection如果超出範圍,則不會關閉。 因此,您必須呼叫 Close來明確關閉連線。

注意

如果您嘗試連線到 SQL Server 的實例,並使用 TCP/IP 以外的通訊協定時,指定 1433 以外的埠號碼,則Open方法會失敗。 若要指定 1433 以外的埠號碼,請在 連接字串 中包含 “server=machinename,port number”,並使用 TCP/IP 通訊協定。

注意

.NET Framework data Provider for SQL Server 需要啟用 [允許呼叫非受控元件SecurityPermissionSecurityPermissionFlag] 的安全性許可權, (設定為 UnmanagedCode) 以開啟SqlConnection已啟用 SQL 偵錯的 。

適用於

產品 版本
.NET Core 1.0, Core 1.1, 6 (package-provided), 7 (package-provided), 8 (package-provided), 9 (package-provided), 10 (package-provided)
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0 (package-provided)

另請參閱