关于SQL Server的日期时间数据类型

SQL Server 2008 各种DateTime的取值范围(原文

SQL Server 2008除了DateTime和SmallDateTime之外,又新增了四种时间类型,分别为:date,time,datetime2和datetimeoffset。

各时间类型范围、精度一览表:

数据类型时间范围精度
datetime1753-01-01 到 9999-12-31
00:00:00 到 23:59:59.997
3.33毫秒
smalldatetime1900-01-01 到 2079-06-06
00:00:00 到 23:59:59
分钟
date0001-01-01 到 9999-12-31
time00:00:00.0000000 到 23:59:59.9999999100纳秒
datetime20001-01-01 到 9999-12-31
00:00:00 到 23:59:59.9999999
100 纳秒
datetimeoffset0001-01-01 到 9999-12-31
00:00:00 到 23:59:59.9999999
-14:00 到 +14:00
100 纳秒

各时间类型表达式一览表:

数据类型输出
time12:35:29.1234567
date2007-05-08
smalldatetime2007-05-08 12:35:00
datetime2007-05-08 12:35:29.123
datetime22007-05-08 12:35:29.1234567
datetimeoffset2007-05-08 12:35:29.1234567 +12:15

Datetime数据类型之datetime2和datetimeoffset数据类型 (原文

SQL Server 2008 中新的日期时间类型:datetime2和datetimeoffset数据类型。

datetime2数据类型,类似于之前的datetime类型,不过其精度比较高,可以精确到小数点后面7位(100ns),其使用语法为:datetime2(n)。使用示例:

declare @dt as datetime2(5)
set @dt = getdate()
select @dt

datetimeoffset数据类型,加入了时区偏移量部分,时区偏移量表示为 [+|-] HH:MM。 HH 是范围从 00 到 14 的 2 位数,表示时区偏移量的小时数。 MM 是范围从 00 到 59 的 2 位数,表示时区偏移量的附加分钟数。 时间格式支持到最小 100 毫微秒。 必需的 + 或 - 符号指示在 UTC(通用协调时间或格林尼治标准时间)中是加上还是减去时区偏移量以获取本地时间。使用示例:

declare @dt as datetimeoffset(8)
set @dt = '2008-08-08 08:08:08.0 +8:00'
select @dt

和CLR数据类型之间的映射关系:

SQL数据类型.NET Framework类型System.Data.SqlDbTypeSystem.Data.DbType
dateSystem.DateTimeDateDate
timeSystem.TimeSpanTimeTime
datetime2System.DateTimeDateTime2DateTime2
datetimeoffsetSystem.DateTimeOffsetDateTimeOffsetDateTimeOffset
datetimeSystem.DateTimeDateTimeDateTime
smalldatetimeSystem.DateTimeDateTimeDateTime
  • 8
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值