適用対象:SQL Server
共通言語ランタイム (CLR) ルーチンは、実行される SQL Server のインスタンスに格納されているデータや、リモート インスタンスに格納されているデータに簡単にアクセスできます。 コードが実行されるユーザー コンテキストによって、ルーチンがアクセスできる特定のデータが決定されます。 .NET Framework Data Provider for SQL Server (SqlClientとも呼ばれます) を使用して CLR データベース オブジェクト内からデータにアクセスします。 これは、マネージド クライアントと中間層アプリケーションから SQL Server データにアクセスする開発者が使用するプロバイダーと同じです。 このため、クライアントアプリケーションと中間層アプリケーションで ADO.NET と SqlClient に関する知識を使用できます。
ユーザー定義型メソッドとユーザー定義関数は、既定ではデータ アクセスを実行できません。 ユーザー定義型 (UDT) メソッドまたはユーザー定義関数からの読み取り専用データ アクセスを有効にするには、SqlMethodAttribute または SqlFunctionAttribute の DataAccess プロパティを DataAccessKind.Read に設定する必要があります。 UDT またはユーザー定義関数からのデータ変更操作は許可されず、試行された場合は実行時に例外がスローされます。
ここでは、CLR データベース オブジェクト内からデータにアクセスする際の機能や動作の具体的な違いについて説明します。 ADO.NET の機能の詳細については、.NET Framework SDK に付属の ADO.NET のドキュメントを参照してください。
次の表に、このセクションの記事を示します。
| 記事 | 形容 |
|---|---|
| コンテキスト接続 | SQL Server へのコンテキスト接続について説明します。 |
| 接続 の権限借用と資格情報の |
接続の権限借用および接続の資格情報について説明します。 |
| ADO.NETに対する SQL Server のインプロセス固有の拡張機能の |
インプロセス固有の SqlPipe、SqlContext、SqlTriggerContext、および SqlDataRecord オブジェクトについて説明します。 |
| CLR の統合とトランザクションの を |
System.Transactions 名前空間で提供される新しいトランザクション フレームワークを、ADO.NET および SQL Server CLR 統合と統合する方法について説明します。 |
| CLR データベース オブジェクトからの XML シリアル化 | SQL Server 内の CLR データベース オブジェクトの XML シリアル化シナリオを有効にする方法について説明します。 |