WEB开发网
开发学院数据库MSSQL Server SQL Server 2008中的新日期数据类型 阅读

SQL Server 2008中的新日期数据类型

 2008-09-04 10:02:27 来源:WEB开发网   
核心提示: DECLARE @T4 time(4) = ’16:59:11.1234567’;DECLARE @T5 time(5) = ’16:59:11.1234567’;DECLARE @T6 time(6) = ’16:59:11.1

DECLARE @T4 time(4) = ’16:59:11.1234567’;

DECLARE @T5 time(5) = ’16:59:11.1234567’;

DECLARE @T6 time(6) = ’16:59:11.1234567’;

DECLARE @T7 time(7) = ’16:59:11.1234567’;

PRINT @T0;

PRINT @T1;

PRINT @T2;

PRINT @T3;

PRINT @T4;

PRINT @T5;

PRINT @T6;

PRINT @T7;

当运行上述代码时将会得到如下结果:

16:59:11

16:59:11.1

16:59:11.12

16:59:11.123

16:59:11.1235

16:59:11.12346

16:59:11.123457

16:59:11.1234567

注意TIME(4),TIME(5)和TIME(6)在显示时进行了精度截断,这与我们前面看到的DATETIME2的行为是一致的。只存储时间部分的TIME数据类型列现在允许我们验证SQL Server的时间值以确保它们包含的是有效的时间,并且能够节省空间。

DATETIMEOFFSET

最后新的日期数据类型是DATETIMEOFFSET数据类型,此数据类型让你存储的日期和时间(24小时制)是时区一致的。时间部分能够支持如DATETIME2和TIME数据类型那样的高达100纳秒的精度。DATETIMEOFFSET需要8到10字节的磁盘空间开销,这完全取决于你定义的时间部分的精度,如下表所示:

SQL Server 2008中的新日期数据类型 

图3

时区一致是指时区标识符是存储在DATETIMEOFFSET列上,时区标识是代表了一个[-|+]hh:mm指定,一个有效的时区范围是从-14:00到+14:00,这个值是增加或者减去UTC以获取本地时间。如需有关时间的转换,请参见“使用日期和时间”主题在联机丛书。

More Date and Time Choices

使用SQL Server 2008,现在有了更多的数据类型选择,可以用来存储你的日期和时间数据。你可以使用DATE数据类型只存储一个日期,或者TIME数据类型只存储一个时间值。在这些新的数据类型中时间部分现在支持的精度可以达到100纳秒。如果有需要存储日期需要与SQL Server的时区保持一致,可以使用DATETIMEOFFSET数据类型,有了这些新的日期/时间数据类型,你应该能够找到好的解决方案,以帮助你存储你的日期使用正确的格式而不需要写大量的自定义代码。

上一页  1 2 3 4 5 

Tags:SQL Server 日期

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接