欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

SQLServer date、datetime、smalldate区别

程序员文章站 2024-01-17 17:23:04
...

环境:SQLServer 2008 R2 问题: SQLServer date、datetime、smalldate区别 解决: datetime 从1753年1月1日到9999年12月31日的日期和时间数据,精确度为百分之三秒(等于 3.33毫秒或0.00333秒)。如下表所示,把调整到.000、.003、或.007 秒的增量。 日期和

环境:SQLServer 2008 R2

问题:SQLServer date、datetime、smalldate区别


解决:


datetime

从1753年1月1日到9999年12月31日的日期和时间数据,精确度为百分之三秒(等于 3.33毫秒或0.00333秒)。如下表所示,把值调整到.000、.003、或.007 秒的增量。

日期和时间部分,可以表示的日期范围从公元1753年1月1日00:00:00.000 到9999年12月31日23:59:59.997 ,精确到3.33毫秒,它需要8个字节的存储空间。

smalldatetime

从1900年1月1日到2079年6月6日的日期和时间数据精确到分钟。29.998秒或更低的 smalldatetime值向下舍入为最接近的分钟,29.999秒或更高的smalldatetime值向上舍入为最接近的分钟。需要4字节的存储空间。

date

SQL Server 2008新引进的数据类型。它表示一个日子,不包含时间部分,可以表示的日期范围从公元元年1月1日到9999年12月31日。只需要3个字节的存储空间。


在读取该数据时不管你的字段是datetime或smalldatetime读出来的格式都一样(如:1900-01-01)。datetime不会显示出他的毫秒,但是在进行时间比较时他要毫秒就会出现,从而让两个时间段不能相等。

参考资料:

http://topic.csdn.net/t/20061024/20/5106333.html

http://www.cnblogs.com/SAL2928/archive/2007/06/01/767431.html

http://zhidao.baidu.com/question/319116298.html