有没有理由不使用DateTime2?

时间:2011-10-12 11:44:41

标签: sql-server-2008 datetime2

我错过了不使用新DateTime2数据类型的理由吗?

例如,迁移到其他数据库系统或将其与其他技术集成时是否会导致问题?

3 个答案:

答案 0 :(得分:5)

其中一篇权威性文章来自Tibor Karaszi

赞成:

  • 更好的精确度
  • 可能存储空间

但最重要的是根据问题的频率判断:

  • 更好地支持ANSI日期格式(否则yyyy-mm-dd不安全)

答案 1 :(得分:1)

如果你足够幸运,除了Sql Server 2008之外什么都不用,并且可以保证你将会很长一段时间,那么我认为没有理由不在你需要的时候使用它。

我认为对this question的回复会比我更好地解释它。

但是,不使用它的原因与您描述的几乎相同,即在早期版本的Sql Server中无法识别,因此在两者之间移动数据需要进行一些转换。

类似地,datetime2具有更高的精度,如果您编写的代码依赖于该精度级别,那么您将被锁定为始终使用该数据类型。

答案 2 :(得分:1)

一个原因不是:我有difficulty with using datetime2 and Microsoft's latest sqljdbc4.jar driver (version 3.0)。当然,如果您不使用JDBC,这可能无关紧要。您也可以使用Microsoft的sqljdbc4.jar 2.0版,或试用jTDS JDBC driver