阅读(345) 赞(5)

T-SQL 数据类型

2016-12-12 14:45:26 更新

SQL Server数据类型是指定任何对象的数据类型的属性。 每个列,变量和表达式在SQL Server中都具有相关的数据类型。 创建表时可以使用这些数据类型。 您可以根据需要为表列选择特定的数据类型。

SQL Server提供七个类别,包括要使用的其他类别的数据类型。

精确数值类型

类型 从 至
BIGINT -9,223,372,036,854,775,808 9,223,372,036,854,775,807
INT -2,147,483,648 2,147,483,647
SMALLINT -32,768 32,767
TINYINT 0 255
BIT 0 1
DECIMAL -10 ^ 38加1 10 ^ 38 -1
NUMERIC -10 ^ 38加1 10 ^ 38 -1
MONEY -922,337,203,685,477.5808 + 922,337,203,685,477.5807
SMALLMONEY -214,748.3648 +214,748.3647

数字和小数是固定精度和标度的数据类型,在功能上是等效。

近似数值类型

类型 从 至
FLOAT -1.79E + 308 1.79E + 308
REAL -3.40E + 38 3.40E + 38

日期和时间类型

类型 从 至

DATATIME (3.33 毫秒精度)

1753年1月1日 9999年12月31日

SMALLDATETIME (1分钟精度)

1900年1月1日 2079年6月6日

DATE (1天的精度。在SQL Server 2008中引入)

0001年1月1日 9999年12月31日

DATETIMEOFFSET (100纳秒的精度。在SQL Server 2008中引入)

0001年1月1日 9999年12月31日

DATATIME2(100纳秒的精度。在SQL Server 2008中引入)

0001年1月1日 9999年12月31日

TIME(100纳秒的精度。在SQL Server 2008中引入)

00:00:00.0000000 23:59:59.9999999

字符串

Sr.No 类型及说明
1

CHAR

固定长度的非Unicode字符数据,最大长度为8,000个字符。

2

VARCHAR

最大长度为8,000个字符的可变长度非Unicode数据。

3

VARCHAR(MAX)

最大长度为231个字符的可变长度非Unicode数据(在SQL Server 2005中引入)。

4

TEXT

可变长度非Unicode数据,最大长度为2,147,483,647个字符。

Unicode字符串

Sr.No 类型及说明
1

NCHAR

固定长度的Unicode数据,最大长度为4,000个字符。

2

NVARCHAR

最大长度为4,000个字符的可变长度Unicode数据。

3

NVARCHAR(MAX)

最大长度为230个字符的可变长度Unicode数据(在SQL Server 2005中引入)。

4

NTEXT

最大长度为1,073,741,823个字符的可变长度Unicode数据。

二进制字符串

Sr.No 类型及说明
1

BINARY

固定长度二进制数据,最大长度为8,000字节。

2

VARBINARY

最大长度为8,000字节的可变长度二进制数据。

3

VARBINARY(MAX)

最大长度为231字节的可变长度二进制数据(在SQL Server 2005中引入)。

4

IMAGE

最大长度为2,147,483,647字节的可变长度二进制数据。

其他数据类型

  • SQL_VARIANT -存储各种SQL Server支持的数据类型的值,text,ntext和timestamp除外。

  • TIMESTAMP  -时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。

  • UNIQUEIDENTIFIER  -存储全局唯一标识符(GUID)。

  • XML -存储XML数据。 您可以将XML实例存储在列或变量中(在SQL Server 2005中引入)。

  • CURSOR -对游标的引用。

  • TABLE -存储结果集以供稍后处理。

  • HIERARCHYID -用于表示层次结构中位置的可变长度的系统数据类型(在SQL Server 2008中引入)。