Transact-SQL 参考

信息架构视图

Microsoft® SQL Server™ 提供下面两种获取元数据的方法:系统存储过程和信息架构视图。

说明  若要获取元数据,请使用系统存储过程、系统函数或只是这些系统提供的视图。如果在将来的版本中对系统表进行修改,那么直接查询系统表可能不会提供准确的信息。

这些视图提供关于 SQL Server 元数据的独立于系统表的内部视图。即使已经对系统表进行了重要的修改,信息架构视图也允许应用程序正常地工作。SQL Server 中包含的信息架构视图符合 SQL-92 标准针对 INFORMATION_SCHEMA 的定义。

SQL Server 支持使用三段命名规则引用当前的服务器。SQL-92 标准也支持三段命名规则。但是,在两个命名规则中使用的名称是不同的。这些视图在一个名为 INFORMATION_SCHEMA 的特殊架构中定义。每个数据库都包含这个架构。每个 INFORMATION_SCHEMA 视图中都包含特定数据库中存储的所有数据对象的元数据。下表描述 SQL Server 名称和 SQL-92 标准名称之间的关系。

SQL Server 名称 映射到下面等价的 SQL-92 名称
数据库 目录
所有者 架构
对象 对象
用户定义数据类型

这个命名规则映射适用于那些与 SQL Server SQL-92 兼容的视图。这些视图在一个名为 INFORMATION_SCHEMA 的特殊架构中定义。每个数据库都包含这个架构。每个 INFORMATION_SCHEMA 视图中都包含特定数据库中存储的所有数据对象的元数据。

此外,有些视图还包含对不同数据类(例如字符数据或二进制数据)的引用。

引用信息架构视图时,必须在通常指定用户名称的位置使用包含 INFORMATION_SCHEMA 架构名称的完全合格的名称。例如:

SELECT *
FROM Northwind.INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = N'Customers'

请参见

数据类型

系统存储过程