共用方式為


從 SQL Server 的執行個體中斷連接

適用於:SQL ServerAzure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics

不需要手動關閉和中斷 SQL Server 管理物件 (SMO) 物件的連線。 聯機會視需要開啟和關閉。

連接共用

呼叫 Connect 方法時,不會自動釋放連線。 必須明確呼叫 Disconnect 方法,才能釋放連線集區的連線。 此外,您也可以要求非集區連線。 您可以設定參考 ServerConnection 物件之屬性的 ConnectionContext NonPooledConnection 屬性來執行此動作。

從 RMO 的 SQL Server 實例中斷連線

當您使用 RMO 進行程式設計時,關閉伺服器連線的運作方式與 SMO 稍有不同。

由於 RMO 物件的伺服器連接是由 ServerConnection 物件所維護,因此當您使用 RMO 進行程式設計時,也會使用這個物件與 Microsoft sql Server 實例中斷連線。 若要使用 ServerConnection 物件關閉連接,請呼叫 RMO 物件的 Disconnect 方法。 連接關閉之後,就無法使用 RMO 物件。

範例

若要使用提供的任何程式代碼範例,您必須選擇程式設計環境、程式設計範本,以及用來建立應用程式的程式設計語言。 如需詳細資訊,請參閱 在Visual Studio .NET 中建立Visual C# SMO 專案。

在 Visual Basic 中關閉和中斷 SMO 物件的連線

此程式代碼範例示範如何藉由設定物件屬性的 ConnectionContext NonPooledConnection 屬性來要求非集區連線。

Dim srv As Server
srv = New Server
'Disable automatic disconnection.
srv.ConnectionContext.AutoDisconnectMode = AutoDisconnectMode.NoAutoDisconnect
'Connect to the local, default instance of SQL Server.
srv.ConnectionContext.Connect()
'The actual connection is made when a property is retrieved.
Console.WriteLine(srv.Information.Version)
'Disconnect explicitly.
srv.ConnectionContext.Disconnect()

在 Visual C 中關閉和中斷 SMO 物件的連線#

此程式代碼範例示範如何藉由設定物件屬性的 ConnectionContext NonPooledConnection 屬性來要求非集區連線。

{   
Server srv;   
srv = new Server();   
//Disable automatic disconnection.   
srv.ConnectionContext.AutoDisconnectMode = AutoDisconnectMode.NoAutoDisconnect;   
//Connect to the local, default instance of SQL Server.   
srv.ConnectionContext.Connect();   
//The actual connection is made when a property is retrieved.   
Console.WriteLine(srv.Information.Version);   
//Disconnect explicitly.   
srv.ConnectionContext.Disconnect();  
}  

另請參閱

Server
ServerConnection