JOJ
踏踏实实做人,认认真真做事!放纵自己就是毁灭自己!

数据类型 范围 用途
int -2^31 到 2^31-1 整数类型 eg. int a  = 22;
smallint -2^15 到 2^15-1 整数类型 eg. int a  = 20;
tinyint 0 到 255 整数类型 eg. int a  = 255;
bigint -2^63 到 2^63-1 整数类型 eg. int a  = 2555;
decimal -10^38 到 10^38-1 浮点类型 eg. decimal() =
numeric -10^38 到 10^38-1 浮点类型 eg. numeric() =
float -1.79E+308 到 -2.23E-308
和 2.23E-308 到 1.79E+308
浮点类型 eg. float a = 2.2
real –3.40E+38 到 –1.18E-38 和 1.18E-38 到  3.4E+38 浮点类型 eg. float a = 2.2
money -922,337,203,685,477.5808 到 922,337,203,685,477.5808 货币类型
smallmoney -214,748.3648 到 214,748.648 货币类型
datetime 1753-1-1 到 9999-12-31 日期和时间类型
smalldatetime 1900-1-1 到 2079-6-6 日期和时间类型
DATE

只记录日期数据 DATE = GETDATE() 2010-08-07

TIME

只记录时间,精确100纳秒 TIME = GETDATE()00:14:36.2000000

DATETIME2 不包含时区,精确100纳秒
DATETIMEOFFSET 包含时区,精确100纳秒
char(n) 1<= n <= 8000 固定长度字符数据
nchar <=4000字符 固定长度Unicode数据
varchar(n) 1<= n <= 8000 可变长度字符类型
nvarchar <=4000字符 可变长度Unicode数据
text 2^31-1 个字符 字符串
ntext 2^31-1 个字符 可变长度Unicode数据
bit 0 或者 1 boolean类型
image 2^31-1位 可变长度二进制数据以存储图片
binary <=8000位 固定长度二进制数据
varbinary <=8000位 可变长度二进制数据
cursor 存储变量或者存储过程OUTPUT参数 光标引用 MSDN
sql_variant <=8016位 查看MSDN解释
timestamp 存储大小为8位 数据库中唯一数字
uniqueidentifier 16位GUID 使用NewID()生成
table 表结构,如UDF返回table 返回表的函数或者返回临时表
xml XML实例和XML类型变量 存储和返回XML值

以上红色部分为 SQL2008 新增的数据类型 ,SQL2005中不存在

下面为几个新增数据类型测试

--只记?录?日?期?数?据?
DECLARE @date1 DATE = GETDATE()
PRINT @date1

--只?记?录?时?间?,精?确?纳?秒?
DECLARE @date5 TIME = GETDATE()
PRINT @date5
--记?录?日?期?和?时?间?,精?确?纳?秒?
DECLARE @date2 DATETIME = GETDATE()
PRINT  @date2
--不?包?含?时?区?,精?确?纳?秒?
DECLARE @date3 DATETIME2 = GETDATE()
PRINT @date3
--包?含?时?区?,精?确?纳?秒?
DECLARE @date4 DATETIMEOFFSET = GETDATE()
PRINT @date4
PRINT SWITCHOFFSET(@date4,'-07:00') --设置时区
PRINT TODATETIMEOFFSET(@date4,'-08:00')
posted on 2010-08-07 00:28  JoinJ  阅读(696)  评论(0编辑  收藏  举报