sys.systypes (Transact-SQL)

更新日期: 2007 年 9 月 15 日

为数据库中定义的每种系统提供的数据类型和每种用户定义的数据类型返回一行。

ms175109.note(zh-cn,SQL.90).gif重要提示:
包含此 SQL Server 2000 系统表体现了向后兼容性。建议您改用当前的 SQL Server 系统视图。若要查找等效系统视图,请参阅将 SQL Server 2000 系统表映射到 SQL Server 2005 系统视图。后续版本的 Microsoft SQL Server 将删除该功能。请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。

列名

数据类型

说明

name

sysname

数据类型名称。

xtype

tinyint

物理存储类型。

status

tinyint

标识只是为了提供一些信息。不提供支持。不保证以后的兼容性。

xusertype

smallint

扩展用户类型。 如果数据类型的数字超过 32,767,则发生溢出或返回 NULL。 有关详细信息,请参阅查询 SQL Server 系统目录

length

smallint

数据类型的物理长度。

xprec

tinyint

服务器使用的内部精度。 不在查询中使用。

xscale

tinyint

服务器使用的内部小数位数。 不在查询中使用。

tdefault

int

特定存储过程的 ID,此存储过程包含对该数据类型的完整性检查功能。

domain

int

特定存储过程的 ID,此存储过程包含对该数据类型的完整性检查功能。

uid

smallint

所有者类型的架构 ID。

对于从旧版 SQL Server 升级的数据库,架构 ID 等于所有者的用户 ID。

ms175109.note(zh-cn,SQL.90).gif重要提示:

如果使用以下任何一个 SQL Server 2005 DDL 语句,则必须使用 sys.types 目录视图而不是 sys.systypes。 ALTER AUTHORIZATION ON TYPE CREATE TYPE

如果用户数和角色数超过 32,767,则会溢出或返回 NULL。有关详细信息,请参阅查询 SQL Server 系统目录

reserved

smallint

标识只是为了提供一些信息。不提供支持。不保证以后的兼容性。

usertype

smallint

用户类型 ID。如果数据类型数超过 32,767,则溢出或返回 NULL。有关详细信息,请参阅查询 SQL Server 系统目录

variable

bit

可变长度数据类型。

1 = True

0 = False

allownulls

bit

指示此数据类型的默认为空性。 如果使用 CREATE TABLEALTER TABLE 指定了为空性,则覆盖此默认值。

type

tinyint

物理存储数据类型。

printfmt

varchar(255)

标识只是为了提供一些信息。不提供支持。不保证以后的兼容性。

prec

smallint

此数据类型的精度级别。

-1 = xml 或大值类型。

scale

tinyint

此数据类型根据精度确定的小数位数。

NULL = 数据类型不是数值。

collation

sysname

如果使用的是字符,则 collation 为当前数据库的排序规则;否则为 NULL。

请参阅

参考

兼容性视图 (Transact-SQL)
将 SQL Server 2000 系统表映射到 SQL Server 2005 系统视图

帮助和信息

获取 SQL Server 2005 帮助

更改历史记录

发布日期 历史记录

2007 年 9 月 15 日

更改的内容:
  • 更正了 xusertype 列的定义。

2006 年 4 月 14 日

更新的内容:
  • 纠正了 uid 列的定义,并添加了重要提示注意。