sys.assembly_modules (Transact-SQL)

共通言語ランタイム (CLR) アセンブリによって定義されている関数、プロシージャ、またはトリガごとに 1 行のデータを返します。このカタログ ビューは、CLR ストアド プロシージャ、CLR トリガ、または CLR 関数を、基になる実装にマップします。種類が TA、AF、PC、FS、および FT のオブジェクトには、関連するアセンブリ モジュールがあります。オブジェクトとアセンブリの間の関連を見つけるには、このカタログ ビューを他のカタログ ビューに結合します。たとえば CLR ストアド プロシージャを作成すると、その CLR ストアド プロシージャは、sys.objectssys.procedures (sys.objects を継承)、および sys.assembly_modules の各カタログ ビューの 1 行ずつのデータによって表されます。ストアド プロシージャ自体は、sys.objectssys.procedures のメタデータによって表されます。プロシージャの基になる CLR 実装への参照は、sys.assembly_modules にあります。

列名

データ型

説明

object_id

int

SQL オブジェクトのオブジェクト ID 番号です。データベース内で一意です。

assembly_id

int

このモジュールの基になるアセンブリの ID です。

assembly_class

sysname

このモジュールを定義しているアセンブリ内のクラスの名前です。

assembly_method

sysname

このモジュールを定義している assembly_class 内のメソッドの名前です。

集計関数 (AF) の場合は NULL です。

null_on_null_input

bit

モジュールは、任意の NULL 入力に対して NULL 出力を生成するように宣言されています。

execute_as_principal_id

int

CLR 関数、ストアド プロシージャ、またはトリガの EXECUTE AS 句によって指定されている、コンテキストの実行が行われるデータベース プリンシパルの ID です。

NULL = EXECUTE AS CALLER。これは既定のオプションです。

指定されているデータベース プリンシパルの ID = EXECUTE AS SELF、EXECUTE AS user_name、または EXECUTE AS login_name。

-2 = EXECUTE AS OWNER。

権限

SQL Server 2005 以降のバージョンでは、カタログ ビューでのメタデータの表示が、ユーザーが所有しているかそのユーザーが権限を許可されている、セキュリティ保護可能なメタデータに制限されます。詳細については、「メタデータ表示の構成」を参照してください。