內容連接
內部資料存取的問題是很常見的案例。也就是說,您想要存取執行 Commn Language Runtime (CLR) 預存程序或函式所在的同一部伺服器。有一個選擇是使用 System.Data.SqlClient.SqlConnection 建立連接,指定指向本機伺服器的連接字串,並開啟連接。這需要指定認證以進行登入。連接與預存程序或函式位於不同的資料庫工作階段中,因此可能會具有不同的 SET 選項、位於單獨交易中,或是找不到暫存資料表等。如果 Managed 預存程序或函式程式碼是在 SQL Server 處理序中執行的,則會是因為其他使用者已連接至該伺服器並執行 SQL 陳述式來叫用它。您可能會想讓預存程序或函式在該連接的內容及其交易、SET 選項等條件中執行。這就稱為內容連接。
內容連接可讓您在第一次叫用程式碼的同一內容中執行 Transact-SQL 陳述式。為了取得內容連接,必須使用 "context connection" 連接字串關鍵字,如下列範例所示:
[C#]
using(SqlConnection connection = new SqlConnection("context connection=true"))
{
connection.Open();
// Use the connection
}
[Visual Basic]
Using connection as new SqlConnection("context connection=true")
connection.Open()
' Use the connection
End Using