次の方法で共有


ユーザー定義集計の作成

CLR アセンブリでプログラミングされたデータベース オブジェクトを SQL Server 内に作成できます。 CLR によって提供される豊富なプログラミング モデルを利用できるデータベース オブジェクトには、トリガー、ストアド プロシージャ、関数、集計関数、型があります。

Transact-SQL で提供される組み込みの集計関数と同様に、ユーザー定義集計関数は値のセットに対して計算を実行し、1 つの値を返します。

SQL Server でユーザー定義集計関数を作成するには、次の手順を実行します。

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

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

  • CREATE AGGREGATE ステートメントを使用して、登録済みアセンブリを参照するユーザー定義集計を作成します。

MicrosoftVisual Studio で SQL Server プロジェクトを展開すると、プロジェクトに指定されたデータベースにアセンブリが登録されます。 プロジェクトを配置すると、 SqlUserDefinedAggregate 属性で注釈が付けられたすべてのクラス定義のユーザー定義集計もデータベースに作成されます。 詳細については、「 CLR データベース オブジェクトの配置」を参照してください。

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

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

ユーザー定義集計を作成するには

こちらもご覧ください

共通言語ランタイム (CLR) 統合プログラミングの概念