コンテキスト接続
適用対象:SQL Server
内部データ アクセスの問題は、非常に一般的なシナリオです。 つまり、共通言語ランタイム (CLR) ストアド プロシージャまたは関数を実行しているサーバーにアクセスする場合の問題です。 1 つのオプションは、System.Data.SqlClient.SqlConnection
を使用して接続を作成し、ローカル サーバーを指す接続文字列を指定して、接続を開く方法です。 この方法では、ログインするための資格情報を指定する必要があります。 接続がストアド プロシージャまたは関数とは異なるデータベース セッションにある、SET
オプションが異なる、別のトランザクションにある、一時テーブルが表示されないなどです。
マネージド ストアド プロシージャまたは関数コードが SQL Server プロセスで実行されている場合は、そのサーバーに接続して SQL ステートメントを実行して呼び出したためです。 ストアド プロシージャまたは関数を、そのトランザクション、SET
オプションなどと共に、その接続のコンテキストで実行することが必要な場合があります。 これは、コンテキスト接続と呼ばれます。
コンテキスト接続を使用すると、コードが初めに起動されたコンテキスト内で Transact-SQL ステートメントを実行することができます。 コンテキスト接続を取得するには、次の例のように、"コンテキスト接続" 接続文字列キーワードを使用する必要があります。
-
C# を
する -
Visual Basic .NET の
using(SqlConnection connection = new SqlConnection("context connection=true"))
{
connection.Open();
// Use the connection
}
このセクションでは、次の操作を行います。
記事 | 形容 |
---|---|
コンテキスト接続と通常の接続 | 通常の接続とコンテキスト接続の違いについて説明します。 |
コンテキスト接続と通常の接続に関する制限 | 通常の接続とコンテキスト接続の制限事項について説明します。 |