SQL查询结果显示"从字符串转换日期和/或时间时,转换失败",我想知道哪些行转换失败,如何找出错误数据?

我上周试过了。

格式为“1 2 /2 9 /2 008 ”和“1 2 /3 0/2 008 ”。

结果是正确的。
相差1 天。

算了。

从字符串转换日期和/或时间时,转换失败

说实话,这段时间过渡的事情确实很让人头疼。
格式、时区、闰秒,都不能错。

我们只是说它的格式错误,这很烦人。
例如,在 Java 中,日期必须采用 yyyy-MM-ddHH:mm:ss 格式,并且每分每秒都必须准确。
您可以输入任何内容,例如“2 02 3 -03 -1 5 1 4 :3 0”。
如果不加秒,就无法转移。
当时我不明白为什么,但后来我明白了,一定要做得工整。
解决方案是检查并使用工具进行正确的格式化。
互联网上有现成的库,因此您无需发明自己的轮子。

时区问题也相当复杂。
当你告诉我时间时,你必须清楚地说明时间在哪里。
例如,北京时间和纽约时间有1 4 小时的时差。
如果不说或者写错的话,转换就会出错。
例如,如果现在是东部时间 3 月 1 5 日下午 3 点,而您直接说“3 月 1 5 日下午 3 点”,系统就会感到困惑。
因此,您必须在转换之前指定时区,可以是 UTC 或特定的城市名称。

闰秒更加详细。
地球自转不均匀,因此有时会有多余的秒,称为闰秒。
计算机内部的计数器并不智能,遇到闰秒时就会冻结。
例如,1 9 9 8 年7 月3 1 日,原本是2 3 :5 9 :6 0。
计算机可能只能识别 2 3 :5 9 :5 9 ,但结果会相差一秒。
解决方案是使用考虑闰秒的高级计时库。
Java 的 Calendar 类具有处理闰秒的方法。

总之,时间转换是一项技术活,需要小心。
格式、时区、闰秒,都不能马虎。

从字符串转换日期和/或时间时,转换失败。 源错误:

具体的SQL我不知道。

查看字符串值。

也许我错了。

直接说和写是错误的。