CLR (共通言語ランタイム) 統合の使用シナリオと例
SQL Serverには、サンプル アプリケーション、パッケージ サンプル、および共通言語ランタイム (CLR) 統合のプログラミング機能について学習するために使用できる多数のコーディング サンプルが含まれています。
これらのサンプルとその他の資料を実装する完全な Visual Studio プロジェクトについては、「Microsoft SQL Server Community Projects & Samples on CodePlex」を参照してください。
名前 | 説明 |
---|---|
CLR UDF からのネイティブ コードへのアクセス | アセンブリ内のユーザー定義関数に含まれるネイティブ (アンマネージ) C++ コードの関数をデータベースから呼び出す方法を紹介します。 |
Array パラメーター サンプル | クライアントからサーバー上の CLR 統合ストアド プロシージャに情報の配列を渡すことで、データベース内の一連の行を作成、更新、または削除する方法を例示します。 この処理は、UDT を使って行っています。 |
カレンダー対応の日付と時刻の UDT サンプル | 日付と時刻のカレンダー対応処理を提供する 2 つの UDT を定義します。 |
CLR Transactions サンプル | System.Transactions 名前空間にあるマネージド API を使用してトランザクションを制御する例を示します。 |
CLR と XML を使用した連絡先の作成 | SQL Server の Contact サンプルは、基礎となる AdventureWorks2012 サンプル データベースに新しい機能の層を追加する便利なユーティリティをいくつか提供します。 1 つ目のユーティリティは、AdventureWorks2012 データベースに関係した、さまざまな人々の連絡先のレコードを作成します。 連絡先の情報は XML を使用して指定され、XML を作成してデータベースの適切なテーブルに配置するための C# ベースのストアド プロシージャまたは VB ストアド プロシージャに渡されます。 |
通貨型と変換関数 | C# を使用して Currency ユーザー定義データ型を定義します。 |
CLR を使用したラージ オブジェクトの処理 | CLR ストアド プロシージャを使用して、SQL Serverとサーバーからアクセスできるファイル システムの間で大きなバイナリ オブジェクト (LOB) を転送する方法を示します。 |
Hello World Ready サンプル | CLR 統合に基づく簡単な国際化対応のストアド プロシージャを作成、配置、およびテストする基本的な操作を例示します。 |
Hello World サンプル | CLR 統合に基づく簡単なストアド プロシージャを作成、配置、およびテストする基本的な操作を例示します。 |
インプロセス データ アクセス サンプル | CLR インプロセス データ アクセス プロバイダーのさまざまな機能を例示する簡単な関数が数多く含まれています。 |
結果セットのサンプル | クエリの結果全体を読み取るときに、新しい接続を開かず、すべての結果をメモリに読み込まずにコマンドを実行する方法を例示します。 |
Send DataSet サンプル | サーバー側の CLR ベースのストアド プロシージャ内で、クライアントへの結果セットとして ADO.NET ベースのデータセットを返す方法を示します。 |
文字列ユーティリティ関数サンプル | Visual C# と Visual Basic で記述されたストリーミング TVF (テーブル値関数) が含まれています。この関数は、コンマ区切りの文字列を 1 列のテーブルに分割します。 |
補助文字対応文字列操作サンプル | Unicode 文字列とサロゲート文字列の両方を処理できる 5 つの補助対応 Transact-SQL 文字列関数の実装を示します。 |
UDT ユーティリティ | 多くの UDT (ユーザー定義データ型) ユーティリティ関数が含まれています。 |
未使用のアセンブリのクリーンアップ | メタデータ カタログに対してクエリを実行して、現在のデータベース内で使用されていないアセンブリを削除する .NET ストアド プロシージャが含まれています。 |
ユーザー定義型 | System.Data.SqlClient を使用した Transact-SQL とクライアント アプリケーションの両方からの単純な UDT の作成と使用を示します。 |
UTF8 文字列ユーザー定義データ型 (UDT) | UTF8 エンコードされた値を格納するために、データベースの型システムを拡張する UDT の実装を例示します。 |