【发布时间】:2009-03-11 11:20:11
【问题描述】:
我遇到了将日期时间从 XML (ISO8601: yyyy-mm-ddThh:mi:ss.mmm) 转换为 SQL Server 2005 日期时间的问题。问题是转换毫秒时是错误的。我已经使用 nvarchar 中的 convert(datetime, MyDate, 126) 测试了隐式和显式转换,结果是一样的:
Original Result
2009-10-29T15:43:12.990 2009-10-29 15:43:12.990
2009-10-29T15:43:12.991 2009-10-29 15:43:12.990
2009-10-29T15:43:12.992 2009-10-29 15:43:12.993
2009-10-29T15:43:12.993 2009-10-29 15:43:12.993
2009-10-29T15:43:12.994 2009-10-29 15:43:12.993
2009-10-29T15:43:12.995 2009-10-29 15:43:12.997
2009-10-29T15:43:12.996 2009-10-29 15:43:12.997
2009-10-29T15:43:12.997 2009-10-29 15:43:12.997
2009-10-29T15:43:12.998 2009-10-29 15:43:12.997
2009-10-29T15:43:12.999 2009-10-29 15:43:13.000
我的非广泛测试显示最后一位数字是 0、3 或 7。这是一个简单的舍入问题吗?毫秒精度很重要,失去/获得一个或两个不是一种选择。
【问题讨论】:
标签: sql-server xml sql-server-2005