目录视图 (Transact-SQL)

目录视图返回 SQL Server 数据库引擎使用的信息。建议您使用目录视图这一最常用的目录元数据界面,它可为您提供最有效的方法来获取、转换并显示此信息的自定义形式。所有用户可用的目录元数据都通过目录视图来显示。

注意注意

目录视图不包含有关复制、备份、数据库维护计划或 SQL Server 代理目录数据的信息。

某些目录视图从其他目录视图继承行。例如,sys.tables 目录视图继承自 sys.objects 目录视图。sys.objects 目录视图称为基本视图,而 sys.tables 视图称为派生视图。sys.tables 目录视图返回专用于表的列,同时还返回 sys.objects 目录视图返回的所有列。sys.objects 目录视图返回表之外的对象(例如,存储过程和视图)的行。创建表之后,表的元数据将在两个视图中返回。尽管两个目录视图返回有关表的不同级别的信息,但在此表的元数据中只有一个具有一个名称和一个 object_id 的项。这可以总结如下:

  • 基本视图包含列的子集和行的超集。

  • 派生视图包含列的超集和行的子集。

重要说明重要提示

在 SQL Server 的未来版本中,Microsoft 可能会通过在列列表的末尾添加列来扩充任何系统目录视图的定义。我们建议不要在生产代码中使用语法 SELECT * FROM sys.catalog_view_name,这是因为返回的列数可能会更改和中断应用程序。

SQL Server 中的目录视图具有如下类别: