sys.system_objects (Transact-SQL)
对于 Microsoft SQL Server 附带的所有架构范围内的系统对象,相应地包含一行。所有系统对象都包含在名为 sys 或 INFORMATION_SCHEMA 的架构中。
列名 |
数据类型 |
说明 |
---|---|---|
名称 |
sysname |
对象名。 |
object_id |
int |
对象标识号。在数据库中是唯一的。 |
principal_id |
int |
如果不是架构所有者,则为特定所有者的 ID。默认情况下,架构包含的对象由架构所有者拥有。不过,通过使用 ALTER AUTHORIZATION 语句更改所有权可以指定其他所有者。 如果没有其他单个所有者,则为 NULL。 如果对象类型为下列类型之一,则为 NULL: C = CHECK 约束 D = DEFAULT(约束或独立) F = FOREIGN KEY 约束 PK = PRIMARY KEY 约束 R = 规则(旧式,独立) TA = 程序集 (CLR) 触发器 TR = SQL 触发器 UQ = UNIQUE 约束 |
schema_id |
int |
包含该对象的架构的 ID。 对于 SQL Server 附带的所有架构范围内的系统对象,该值将始终在 (schema_id('sys'), schema_id('INFORMATION_SCHEMA')) 中。 |
parent_object_id |
int |
该对象所属对象的 ID。 0 = 不是子对象。 |
type |
char(2) |
对象类型: AF = 聚合函数 (CLR) C = CHECK 约束 D = DEFAULT(约束或独立) F = FOREIGN KEY 约束 FN = SQL 标量函数 FS = 程序集 (CLR) 标量函数 FT = 程序集 (CLR) 表值函数 IF = SQL 内联表值函数 IT = 内部表 P = SQL 存储过程 PC = 程序集 (CLR) 存储过程 PG = 计划指南 PK = PRIMARY KEY 约束 R = 规则(旧式,独立) RF = 复制筛选过程 S = 系统基表 SN = 同义词 SQ = 服务队列 TA = 程序集 (CLR) DML 触发器 TF = SQL 表值函数 TR = SQL DML 触发器 TT = 表类型 U = 表(用户定义类型) UQ = UNIQUE 约束 V = 视图 X = 扩展存储过程 |
type_desc |
nvarchar(60) |
对象类型的说明。AGGREGATE_FUNCTION CHECK_CONSTRAINT DEFAULT_CONSTRAINT FOREIGN_KEY_CONSTRAINT SQL_SCALAR_FUNCTION CLR_SCALAR_FUNCTION CLR_TABLE_VALUED_FUNCTION SQL_INLINE_TABLE_VALUED_FUNCTION INTERNAL_TABLE SQL_STORED_PROCEDURE CLR_STORED_PROCEDURE PLAN_GUIDE PRIMARY_KEY_CONSTRAINT RULE REPLICATION_FILTER_PROCEDURE SYSTEM_TABLE SYNONYM SERVICE_QUEUE CLR_TRIGGER SQL_TABLE_VALUED_FUNCTION SQL_TRIGGER TABLE_TYPE USER_TABLE UNIQUE_CONSTRAINT VIEW EXTENDED_STORED_PROCEDURE |
create_date |
datetime |
对象的创建日期。 |
modify_date |
datetime |
上次使用 ALTER 语句修改对象的日期。如果对象为表或视图,则创建或修改表或视图的聚集索引时,modify_date 也会随之更改。 |
is_ms_shipped |
bit |
对象是由内部 Microsoft SQL Server 组件创建的。 |
is_published |
bit |
对象为发布对象。 |
is_schema_published |
bit |
仅发布对象的架构。 |