Share via


CLR (共通言語ランタイム) 統合の使用シナリオと例

SQL Server には、サンプル アプリケーション、パッケージ サンプル、およびさまざまなコーディング サンプルが含まれています。これらのサンプルを使用することで、CLR (共通言語ランタイム) 統合のプログラミング機能について知ることができます。

次の表に、CodePlex から入手できる CLR 統合のプログラミング サンプルを示します。詳細については、「SQL Server データベース エンジン サンプル」を参照してください。

名前

説明

SQL Server データベース エンジン サンプル

基礎となる AdventureWorks2008R2 サンプル データベースに新しい機能の層を追加するユーティリティを提供します。

補助文字対応文字列操作

Unicode 文字列とサロゲート文字列の両方を処理できる、補助文字対応の 5 つの Transact-SQL 文字列関数の実装を示します。

ラージ オブジェクト (LOB) の処理

SQL Server とサーバーからアクセスできるファイル システムとの間で、CLR ストアド プロシージャを使用して LOB (ラージ バイナリ オブジェクト) を転送する例を示します。

インプロセス データ アクセス サンプル

CLR インプロセス データ アクセス プロバイダーのさまざまな機能を例示する簡単な関数が数多く含まれています。

文字列分割テーブル値関数 (TVF)

Visual C# と Visual Basic で記述されたストリーミング TVF (テーブル値関数) が含まれています。この関数は、コンマ区切りの文字列を 1 列のテーブルに分割します。

UDT ユーティリティ

多くの UDT (ユーザー定義データ型) ユーティリティ関数が含まれています。

ユーザー定義データ型 (UDT) サンプル

Transact-SQL と、System.Data.SqlClient を使用するクライアント アプリケーションの両方から、簡単な UDT を作成および使用する方法を示します。

UTF8 文字列ユーザー定義データ型 (UDT)

UTF8 エンコードされた値を格納するために、データベースの型システムを拡張する UDT の実装を例示します。

カレンダー対応の日付/時刻 UDT

日付と時刻のカレンダー対応処理を提供する 2 つの UDT を定義します。

結果セットのサンプル

クエリの結果全体を読み取るときに、新しい接続を開かず、すべての結果をメモリに読み込まずにコマンドを実行する方法を例示します。

Array パラメーター サンプル

クライアントからサーバー上の CLR 統合ストアド プロシージャに情報の配列を渡すことで、データベース内の一連の行を作成、更新、または削除する方法を例示します。この処理は、UDT を使って行っています。

Hello World サンプル

CLR 統合に基づく簡単なストアド プロシージャを作成、配置、およびテストする基本的な操作を例示します。

Hello World Ready サンプル

CLR 統合に基づく簡単な国際化対応のストアド プロシージャを作成、配置、およびテストする基本的な操作を例示します。

Impersonation サンプル

権限の借用を使用して、クライアントから渡された資格情報を使う方法を例示します。統合セキュリティを使用している場合、オペレーティング システムによって保護されたリソースにアクセスするために、この処理を行います。

Spatial サンプル

統合セキュリティを使用している場合に、クライアントから渡される資格情報を使用してオペレーティング システムの保護されたリソース (ファイルなど) にアクセスするための、権限借用の使用方法を例示します。

Oracle TVF サンプル

Oracle のマネージ コード インターフェイスを呼び出して、任意の Oracle クエリの結果をテーブル値関数として公開する方法を例示します。

Send DataSet サンプル

サーバー側の CLR ベースのストアド プロシージャ内で、クライアントへの結果セットとして ADO.NET ベースのデータセットを返す方法を示します。

System.Transactions サンプル

System.Transactions 名前空間にあるマネージ API を使用してトランザクションを制御する例を示します。