sys.system_columns (Transact-SQL)

具有列的系统对象的每列都对应一行。

列名

数据类型

说明

object_id

int

此列所属对象的 ID。

名称

sysname

列名。在对象中是唯一的。

column_id

int

列的 ID。在对象中是唯一的。

列 ID 可以不按顺序排列。

system_type_id

tinyint

列的系统类型的 ID。

user_type_id

int

用户定义的列类型的 ID。

若要返回该类型的名称,请在该列中联接到 sys.types 目录视图。

max_length

smallint

列的最大长度(以字节为单位)。

-1 = 列数据类型为 varchar(max)、nvarchar(max)、varbinary(max) 或 xml。

对于 text 列,max_length 值将是 16,或者是 sp_tableoption 'text in row' 所设置的值。

precision

tinyint

如果列包含的是数值,则为该列的精度;否则为 0。

scale

tinyint

如果列包含的是数值,则为列的小数位数;否则为 0。

collation_name

sysname

如果列包含的是字符,则为该列排序规则的名称;否则为 NULL。

is_nullable

bit

1 = 列可为空。

is_ansi_padded

bit

1 = 如果列为字符、二进制或变量类型,则该列使用 ANSI_PADDING ON 行为。

0 = 列不是字符、二进制或变量类型。

is_rowguidcol

bit

1 = 列为声明的 ROWGUIDCOL。

is_identity

bit

1 = 列具有标识值。

is_computed

bit

1 = 列为计算列。

is_filestream

bit

1 = 列声明使用 Filestream 存储。

is_replicated

bit

1 = 列已复制。

is_non_sql_subscribed

bit

1 = 列具有非 SQL Server 订阅服务器。

is_merge_published

bit

1 = 列已合并发布。

is_dts_replicated

bit

1 = 使用 SSIS 复制列。

is_xml_document

bit

1 = 内容为完整的 XML 文档。

0 = 内容是文档片段,或列的数据类型不是 xml。

xml_collection_id

int

如果列数据类型为 xml 并且已键入 XML,则其值为非零值。该值将为包含列的验证 XML 架构命名空间的集合的 ID。

0 = 没有 XML 架构集合。

default_object_id

int

默认对象的 ID,无论该对象是独立的 sys.sp_bindefault 还是内联的列级 DEFAULT 约束。内联列级默认对象的 parent_object_id 列是对该表本身的反引用。或者,如果没有默认值,则其值为 0。

rule_object_id

int

使用 sys.sp_bindrule 绑定到列的独立规则的 ID。

0 = 无独立规则。

有关列级 CHECK 约束的信息,请参阅 sys.check_constraints (Transact-SQL)

is_sparse

bit

1 = 列为稀疏列。有关详细信息,请参阅使用稀疏列

is_column_set

bit

1 = 列为列集。有关详细信息,请参阅使用列集

权限

在 SQL Server 2005 及更高版本中,目录视图中仅显示用户拥有的安全对象的元数据,或用户对其拥有某些权限的安全对象的元数据。有关详细信息,请参阅元数据可见性配置