sql server系统表详细说明 之 sys.objects


在数据库内创建的每个用户定义的架构范围内的对象(包括本机编译的标量用户定义函数)都包含一行。

有关详细信息,请参阅内存中 OLTP 的标量用户定义函数

 备注

sys.objects 不显示 DDL 触发器,因为它们不是架构范围内的对象。 所有触发器(包括 DML 和 DDL)都位于 sys.databases中。 sys.triggers 支持对各种触发器应用混合名称范围规则。

 

表 1
列名称数据类型说明
namesysname对象名称。
object_idint对象标识号。 在数据库中是唯一的。
principal_idint如果不是架构所有者,则为单个所有者的 ID。 默认情况下,架构包含的对象由架构所有者拥有。 不过,通过使用 ALTER AUTHORIZATION 语句更改所有权可以指定备用所有者。

如果没有备用的单个所有者,则为 NULL。

如果对象类型为下列类型之一,则为 NULL:

C = CHECK 约束

D = DEFAULT(约束或独立)

F = FOREIGN KEY 约束

PK = PRIMARY KEY 约束

R = 规则(旧式,独立)

TA = 程序集(CLR 集成)触发器

TR = SQL 触发器

UQ = UNIQUE 约束

EC = Edge 约束
schema_idint包含该对象的架构的 ID。

始终包含在 sys 或 INFORMATION_SCHEMA 架构中的架构范围内的系统对象。
parent_object_idint此对象所属对象的 ID。

0 = 不是子对象。
类型char(2)对象类型:

AF = 聚合函数 (CLR)

C = CHECK 约束

D = DEFAULT(约束或独立)

F = FOREIGN KEY 约束

FN = SQL 标量函数

FS = 程序集 (CLR) 标量函数

FT = 程序集 (CLR) 表值函数

IF = SQL 内联表值函数

IT = 内部表

P = SQL 存储过程

PC = Assembly (CLR) 存储过程

PG = 计划指南

PK = PRIMARY KEY 约束

R = 规则(旧式,独立)

RF = 复制筛选过程

S = 系统基表

SN = 同义词

SO = 序列对象

U = 表(用户定义类型)

V = 视图

EC = Edge 约束



适用于:SQL Server 2012 (11.x) 及更高版本。

SQ = 服务队列

TA = 程序集 (CLR) DML 触发器

TF = SQL 表值函数

TR = SQL DML 触发器

TT = 表类型

UQ = UNIQUE 约束

X = 扩展存储过程



适用 于: SQL Server 2014 (12.x) 和更高版本、、和 Azure SQL 数据库 Azure Synapse Analytics 并行数据仓库 。

ST = STATS_TREE



适用 于: SQL Server 2016 (13.x) 和更高版本、、和 Azure SQL 数据库 Azure Synapse Analytics 并行数据仓库 。

ET = 外部表
type_descnvarchar(60)对对象类型的说明:

AGGREGATE_FUNCTION

CHECK_CONSTRAINT

CLR_SCALAR_FUNCTION

CLR_STORED_PROCEDURE

CLR_TABLE_VALUED_FUNCTION

CLR_TRIGGER

DEFAULT_CONSTRAINT

EXTENDED_STORED_PROCEDURE

FOREIGN_KEY_CONSTRAINT

INTERNAL_TABLE

PLAN_GUIDE

PRIMARY_KEY_CONSTRAINT

REPLICATION_FILTER_PROCEDURE

RULE

SEQUENCE_OBJECT



适用于:SQL Server 2012 (11.x) 及更高版本。

SERVICE_QUEUE

SQL_INLINE_TABLE_VALUED_FUNCTION

SQL_SCALAR_FUNCTION

SQL_STORED_PROCEDURE

SQL_TABLE_VALUED_FUNCTION

SQL_TRIGGER

SYNONYM

SYSTEM_TABLE

TABLE_TYPE

UNIQUE_CONSTRAINT

USER_TABLE

VIEW
create_datedatetime对象的创建日期。
modify_datedatetime上次使用 ALTER 语句修改对象的日期。 如果对象是表或视图,则在创建或更改表或视图的索引时,modify_date 也会发生更改。
is_ms_shippedbit对象由内部 SQL Server 组件创建。
is_publishedbit对象为发布对象。
is_schema_publishedbit仅发布对象的架构。

备注

可以将 OBJECT_ID、 OBJECT_NAME和 OBJECTPROPERTY () 内置函数应用于 sys.databases 中显示的对象。

此视图有一个版本,它具有与系统对象相同的架构(称为 sys.system_objects)。 还有另一个名为 sys.all_objects 的视图,它显示系统对象和用户对象。 所有这三个目录视图的结构都相同。

在此版本的 SQL Server 中,扩展索引(例如 XML 索引或空间索引)将视为 sys.objects 中的内部表(type = IT,type_desc = INTERNAL_TABLE)。 对于扩展索引:

  • name 是索引表的内部名称。

  • parent_object_id 是基表的 object_id。

  • is_ms_shipped、is_published 和 is_schema_published 列设置为 0。

相关的有用系统视图
可以通过对特定类型的对象使用系统视图来查看对象的子集,例如:

版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
YES开发框架
评论列表

发表评论

评论内容
昵称:
关联文章

sql server系统详细说明 sys.system_objects
sql server系统详细说明 sys.objects
sql server系统详细说明 sys.all_objects
sql server系统详细说明 sys.all_columns
sql server系统详细说明 sys.masked_columns
sql server系统详细说明 sys.columns
sql server系统详细说明 sys.system_columns
sql server系统详细说明 sys.sql_modules
sql server系统详细说明 sys.tables
sql server系统详细说明 sys.views
sql server系统详细说明 sys.system_views
sql server系统详细说明 sys.stats
sql server系统详细说明 sys.parameters
sql server系统详细说明 sys.system_parameters
sql server系统详细说明 sys.sql_dependencies
sql server系统详细说明 sys.default_constraints
sql server系统详细说明 sys.table_types
sql server系统详细说明 sys.databases
sql server系统详细说明 sys.numbered_procedures
sql server系统详细说明 sys.all_views