CLR トリガのプログラミング

SQL Server の内部には、Microsoft .NET Framework CLR (共通言語ランタイム) で作成されたアセンブリの形式でプログラミングされたデータベース オブジェクトを作成できます。CLR で提供される豊富なプログラミング モデルを利用できるデータベース オブジェクトには、DML トリガ、DDL トリガ、ストアド プロシージャ、関数、集計関数、型などがあります。

SQL Server の CLR トリガ (DML トリガまたは DDL トリガ) を作成するには、次の手順を実行します。

  • トリガを .NET Framework でサポートされる言語でクラスとして定義します。CLR でのトリガのプログラミング方法の詳細については、「CLR トリガー」を参照してください。次に、適切な言語コンパイラを使用してクラスをコンパイルし、.NET Framework のアセンブリをビルドします。

  • CREATE ASSEMBLY ステートメントを使用して、SQL Server にアセンブリを登録します。SQL Server のアセンブリの詳細については、「アセンブリ (データベース エンジン)」を参照してください。

  • 登録したアセンブリを参照するトリガを作成します。

注意

Microsoft Visual Studio で SQL Server プロジェクトを配置すると、そのプロジェクトで指定されたデータベース内のアセンブリが登録されます。また、プロジェクトを配置することで、SqlTrigger 属性で注釈が付けられたすべてのメソッドの CLR トリガがデータベースに作成されます。詳細については、「CLR データベース オブジェクトの配置」を参照してください。

注意

CLR コードを実行する SQL Server の機能は、既定では無効になっています。マネージ コード モジュールを参照するデータベース オブジェクトを作成、変更、削除することはできますが、sp_configure (Transact-SQL) を使用して clr enabled オプションを有効にしないと、SQL Server では、これらの参照が実行されません。

アセンブリを作成、変更、または削除するには

CLR トリガを作成するには