sys.types (Transact-SQL)

适用于:Microsoft Fabric Microsoft Fabric Warehouse 中的 SQL Server Azure SQL 数据库 Azure SQL 托管实例 Azure Synapse Analytics Analytics Platform System (PDW) SQL Analytics 终结点

每个系统类型和用户定义类型都在表中对应一行。

列名称 数据类型 说明
name sysname 类型的名称。 在架构内是唯一的。
system_type_id tinyint 内部系统类型的 ID。
user_type_id int 类型的 ID。 在该数据库中是唯一的。 对于系统数据类型,user_type_id = system_type_id。

CLR 程序集类型(如 hierarchyid、geometry 和 geography)将具有不同的 system_type_id,并且可以使用 is_assembly_type 进行标识。 sysname 数据类型是基于 nvarchar 的内部数据类型。
schema_id int 类型所属架构的 ID。
principal_id int 如果个体所有者与架构所有者不同,则表示该所有者的 ID。 默认情况下,架构包含的对象由架构所有者拥有。 不过,通过使用 ALTER AUTHORIZATION 语句更改所有权可以指定备用所有者。

如果没有另外的个体所有者,则值为 NULL。
max_length smallint 类型的最大长度(字节)。

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

对于 text 列,max_length 值将为 16。
精度 tinyint 如果类型基于数值,则表示类型的最大精度;否则,该值为 0。
scale tinyint 如果类型基于数值,则表示类型的最大小数位数;否则,该值为 0。
collation_name sysname 如果类型基于字符,则表示类型排序规则的名称;否则,该值为 NULL。
is_nullable bit 类型可以为 Null。
is_user_defined bit 1 = 用户定义类型。

0 = SQL Server 系统数据类型。
is_assembly_type bit 1 = 类型的实现是在 CLR 程序集中定义的。

0 = 类型基于 SQL Server 系统数据类型。
default_object_id int 使用 sp_bindefault 绑定到类型的独立默认值的 ID。

0 = 不存在默认值。
rule_object_id int 使用 sp_bindrule 绑定到类型的独立规则的 ID。

0 = 不存在规则。
is_table_type bit 指示该类型为表。

权限

目录视图中仅显示用户拥有的安全对象的元数据,或用户对其拥有某些权限的安全对象的元数据。 有关详细信息,请参阅 Metadata Visibility Configuration

另请参阅