你好,我有一个Grails应用程序,它使用java.util.Date将一个定时值存储到Microsoft SQL Server数据库中。
我将日期值从.csv文件中加载,格式为:
java.util.Date send_date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS").parse(data[1]);
如果我用调试器观察var send_date
,则字段的毫秒数为正确的值millis = 241
变量send_date
是java.util.Date
类型,在我的数据库中创建Data Type = datetime
列,但数据库中的值是2007-10-04 10:10:53.240
,这意味着毫秒是错误的。它总是随机出现,有时是正确的毫秒数,有时是+1或-1。
有没有人知道与我的数据库兼容的其他数据类型,我已经尝试过java.sql.Date
,但后来我没有一个构造函数来添加这种格式"yyyy-MM-dd HH:mm:ss.SSS"
如果有人知道我如何使用这种输入格式创建另一个日期对象请让我知道:)
SQL Server'd DATETIME数据类型的分辨率为3 ms。如果需要更高的分辨率,请使用DATETIME2数据类型。它的分辨率是100ns