离线下载
PDF版 ePub版

极客学院团队出品 · 更新于 2018-09-20 06:00:38

SQL 数据类型

SQL 数据类型是一种属性,它指定了任何 SQL 对象中数据的类型。在 SQL 中,任意一个列、变量或者表达式都有其数据类型。

创建表的时候,你会用到这些数据类型。你应该根据需要为表中的每一个列选择合适的数据类型。

SQL Server 提供了六种数据类型供你使用:

精确数值数据类型

数据类型 下限 上限
bigint -9,223,372,036,854,770,000 9,223,372,036,854,770,000
int -2,147,483,648 2,147,483,647
smallint -32,768 32,767
tinyint 0 255
bit 0 1
decimal 1E+38 10^38 -1
numeric 1E+38 10^38 -1
money -922,337,203,685,477.00 922,337,203,685,477.00
smallmoney -214,748.36 214,748.36

近似数值数据类型

数据类型 下限 上限
float -1.79E + 308 1.79E + 308
real -3.40E + 38 3.40E + 38

日期和时间数据类型

数据类型 下限 上限
datetime Jan 1, 1753 31-Dec-99
smalldatetime 1-Jan-00 6-Jun-79
date 存储一个日期数据,例如 June 30, 1991
time 存储一个时间数据,例如 12:30 P.M.

注意:datetime 的时间和精度为 3.33 ms,而 smalldatetime 的时间精度为 1 min。

字符串数据类型

数据类型 下限 上限
char char 最大长度为 8,000 字符。(定长非 Unicode 字符)
varchar varchar 最大长度为 8,000 字符。(变长非 Unicode 数据)
varchar(max) varchar(max) 最大长度为 231 字符, 变长非 Unicode 数据 (仅限 SQL Server 2005).
text text 变长非 Unicode 字符数据,最大长度 2,147,483,647 字符。

Unicode 字符串数据类型

数据类型 描述
nchar 最大长度 4000 字符。(定长 Unicode 字符串)
nvarchar 最大长度 4000 字符。(变长 Unicode 字符串)
nvarchar(max) 最大长度 231 字符 。(仅限 SQL Server 2005)。(变长 Unicode 字符串)
ntext 最大长度 1,073,741,823 字符。(变长 Unicode 字符串)

二进制数据类型

数据类型 描述
binary 最大长度 8000 字节。(定长二进制数据)
varbinary 最大长度 8000 字节。(变长二进制数据)
varbinary(max) 最大长度 231字节 (仅限 SQLServer 2005)。 (变长二进制数据)
image 最大长度 2,147,483,647 字节。(变长二进制数据)

其他数据类型

数据类型 描述
sql_variant 存储多种 SQL 支持的数据类型,text、ntext、timestamp 除外。
timestamp 一个数据库级的唯一值,每当有行更新此数据就会更新。
uniqueidentifier 全局唯一标识符(GUID)
xml 存储 XML 数据。你可以在列或者变量中存储 XML 实例。(仅限 SQL Server 2005)
cursor 指向 cursor 对象。
table 存储结果,以备后用。
上一篇: 语法 下一篇: 操作符