從 SQL Server 的執行個體中斷連接
您並不需要以手動方式關閉和中斷 SQL Server 管理物件 (SMO) 物件的連接。連接會視需要開啟和關閉。
連接共用
呼叫 Connect 方法時,並不會自動釋放連接。您必須明確地呼叫 Disconnect 方法,才能釋放對連接集區的連接。此外,您也可以要求非共用連接。執行此作業的方法是設定 ConnectionContext 屬性的 NonPooledConnection 屬性,該屬性會參考 ServerConnection 物件。
從 RMO 的 SQL Server 執行個體中斷連接
在使用 RMO 進行程式開發時關閉伺服器連接,與使用 SMO 時稍有不同。
因為 RMO 物件的伺服器連接是由 ServerConnection 物件維護,所以如果使用 RMO 進行程式開發時從 Microsoft SQL Server 的執行個體中斷連接,也會使用這個物件。若要使用 ServerConnection 物件關閉連接,請呼叫 RMO 物件的 Disconnect 方法。在關閉連接之後,就無法使用 RMO 物件。
範例
如果要使用所提供的任何程式碼範例,您必須選擇建立應用程式用的程式設計環境、程式設計範本,及程式設計語言。如需詳細資訊,請參閱《SQL Server 線上叢書》中的<如何:在 Visual Studio .NET 中建立 Visual Basic SMO 專案>或<如何:在 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();
}