CLR ストアド プロシージャの作成
SQL Server 2008 では、SQL Server のインスタンス内部に Microsoft.NET Framework CLR (共通言語ランタイム) で作成されたアセンブリの形式でプログラミングされたデータベース オブジェクトを作成できます。CLR が提供する豊富なプログラミング モデルを利用できるデータベース オブジェクトには、トリガ、ストアド プロシージャ、関数、集計関数、型などがあります。
SQL Server の CLR ストアド プロシージャを作成するには、次の手順に従います。
.NET Framework がサポートする言語のクラスの静的メソッドとして、ストアド プロシージャを定義します。CLR ストアド プロシージャのプログラミング方法の詳細については、「CLR ストアド プロシージャ」を参照してください。次に、適切な言語コンパイラを使用してクラスをコンパイルし、.NET Framework のアセンブリをビルドします。
CREATE ASSEMBLY ステートメントを使用して、SQL Server にアセンブリを登録します。SQL Server のアセンブリを使用した作業方法の詳細については、「アセンブリ」を参照してください。
CREATE PROCEDURE ステートメントを使用して、登録したアセンブリを参照するストアド プロシージャを作成します。
注意 |
---|
MicrosoftVisual Studio で SQL Server プロジェクトを配置すると、そのプロジェクトで指定されたデータベース内のアセンブリが登録されます。また、プロジェクトを配置することで、SqlProcedure 属性で注釈が付けられたすべてのメソッドに対応する CLR ストアド プロシージャがデータベースに作成されます。詳細については、「CLR データベース オブジェクトの配置」を参照してください。 |
注意 |
---|
CLR コードを実行する SQL Server の機能は、既定では無効になっています。マネージ コード モジュールを参照するデータベース オブジェクトを作成、変更、削除することはできますが、sp_configure (Transact-SQL) を使用して clr enabled オプションを有効にしないと、これらの参照は SQL Server で実行されません。 |
アセンブリを作成、変更、または削除するには
CLR ストアド プロシージャを作成するには