sys.assembly_modules (Transact-SQL)
适用于:SQL Server
Azure SQL 托管实例
Azure Synapse Analytics
Analytics 平台系统 (PDW)
为公共语言运行时 (CLR) 程序集所定义的每个函数、过程或触发器返回一行。 此目录视图将 CLR 存储过程、CLR 触发器或 CLR 函数映射到其基础实现。 类型为 TA、AF、PC、FS 和 FT 的对象具有相关联的程序集模块。 若要查找对象和程序集之间的关联,可以将此目录视图联接到其他目录视图。 例如,创建 CLR 存储过程时,它由 sys.objects 中的一行表示, sys.procedures (中的一行(继承自 sys.objects) )和 sys.assembly_modules中的一行。 存储过程本身由 sys.objects 和 sys.procedures 中的元数据表示。 sys.assembly_modules中可以找到对过程的基础 CLR 实现 的引用。
列名称 | 数据类型 | 说明 |
---|---|---|
object_id | int | SQL 对象的对象标识号。 在数据库中是唯一的。 |
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 | 在其中执行上下文的数据库主体的 ID,该 ID 由 CLR 函数、存储过程或触发器的 EXECUTE AS 子句指定。 NULL = EXECUTE AS CALLER。 这是默认值。 指定数据库主体的 ID = EXECUTE AS SELF、EXECUTE AS user_name 或 EXECUTE AS login_name。 -2 = EXECUTE AS OWNER。 |
权限
目录视图中仅显示用户拥有的安全对象的元数据,或用户对其拥有某些权限的安全对象的元数据。 有关详细信息,请参阅 Metadata Visibility Configuration。