数据类型同义词 (Transact-SQL)

SQL Server 中包含数据类型同义词以便实现 ISO 兼容性。 下表列出了这些同义词以及它们映射到的 SQL Server 系统数据类型。

同义词

SQL Server 系统数据类型

Binary varying

varbinary

char varying

varchar

character

char

character

char(1)

character(n)

char(n)

character varying(n)

varchar(n)

Dec

decimal

Double precision

float

float[(n)] for n = 1-7

real

float[(n)] for n = 8-15

float

integer

int

national character(n)

nchar(n)

national char(n)

nchar(n)

national character varying(n)

nvarchar(n)

national char varying(n)

nvarchar(n)

national text

ntext

timestamp

rowversion

在诸如 CREATE TABLE、CREATE PROCEDURE 或 DECLARE @variable 这类数据定义语言 (DDL) 语句中,数据类型同义词可用来代替相应的基本数据类型名。 但是,创建对象后看不到同义词。 创建对象后,为对象分配与同义词相关联的基本数据类型。 没有记录能表明在创建对象的语句中指定了同义词。

将给所有由原始对象派生出的对象(如结果集列或表达式)分配基本数据类型。 所有对原始对象和任何派生对象执行的后续元数据函数都将报告基本数据类型,而不是同义词。 这种行为会发生在元数据操作(如 sp_help)和其他报告表或结果集列的数据类型的系统存储过程、信息架构视图或各种数据访问 API 元数据操作上。

例如,您可以通过指定 national character varying 创建表:

CREATE TABLE ExampleTable (PriKey int PRIMARY KEY, VarCharCol national character varying(10))

实际为 VarCharCol 分配了 nvarchar(10) 数据类型,所有后续元数据函数将该列报告为 nvarchar(10) 列。 元数据函数永远不会将它们报告为 national character varying(10) 列。

请参阅

参考

数据类型 (Transact-SQL)