次の方法で共有


コンテキスト接続

適用対象: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
}

このセクションでは、次の操作を行います。

記事 形容
コンテキスト接続と通常の接続 通常の接続とコンテキスト接続の違いについて説明します。
コンテキスト接続と通常の接続に関する制限 通常の接続とコンテキスト接続の制限事項について説明します。