对每个 SQL 语言定义的模块对象都返回一行。类型为 P、RF、V、TR、FN、IF、TF 和 R 的对象均有关联的 SQL 模块。在此视图中,独立的默认值,即 D 类型的对象也具有 SQL 模块定义。有关这些类型的说明,请参阅 sys.objects 目录视图中的类型列。
列名
数据类型
说明
object_id
int
包含对象的对象的 ID。在数据库中是唯一的。
definition
nvarchar(max)
用于定义此模块的 SQL 文本。
NULL = 已加密。
uses_ansi_nulls
bit
模块是使用 SET ANSI_NULLS ON 创建的。
对于规则和默认值,始终 = 0。
uses_quoted_identifier
模块是使用 SET QUOTED_IDENTIFIER ON 创建的。
is_schema_bound
模块是使用 SCHEMABINDING 选项创建的。
uses_database_collation
1 = 架构绑定模块定义取决于正确处理所需的数据库的默认排序规则;否则为 0。此种依赖关系可防止更改数据库的默认排序规则。
is_recompiled
过程是使用 WITH RECOMPILE 选项创建的。
null_on_null_input
模块是为了针对 NULL 输入生成 NULL 输出而声明的。
execute_as_principal_id
Int
EXECUTE AS 数据库主体的 ID。
默认情况下或如果为 EXECUTE AS CALLER,则为 NULL。
如果为 EXECUTE AS SELF 或 EXECUTE AS <主体>,则为指定主体的 ID。
-2 = EXECUTE AS OWNER。