我正在尝试在sql中的表的日期时间字段中插入日期值'2010-03-14 02:00:00 AM'(2010年的节日开始时间)服务器2005.日期保存为'2010-03-14 03:00:00 AM'服务器安装在美国(EST时区)。
有人能告诉我日期保存的原因不同吗?
由于 鲁帕
答案 0 :(得分:2)
当时钟从0200跳到0300时,其中一个时间不存在。
本地时间的数字显示不会在班次正好显示02:00,而是从01:59:59.9跳转到03:00:00.0或者向后跳转到01:00:00.0。
在我看来,你应该在GMT / UTC的数据库中保存所有时间,并且只使用客户端显示的本地时区 - 因此在数据库中所有时间都会单调增加(即时间不会跳回在夏令时结束时)
答案 1 :(得分:2)
GMT!= UTC。 GMT有夏令时,UTC没有。 将您的日期保存为UTC,您就可以开始了。
答案 2 :(得分:1)
一点:根据定义,GMT全年不会改变:在英国,GMT或BST(英国夏令时)都存在。
除此之外,我会重新检查您的数据库和服务器的时区设置。