在SQL中插入UTC偏移日期时间会更改时间-为什么?

在SQL中插入UTC偏移日期时间会更改时间-为什么?,sql,sql-server,datetime,timezone,utc,Sql,Sql Server,Datetime,Timezone,Utc,我有一个日期2015-03-11T08:43:19.7810000-05:00,我正在插入MSSQLS2008数据库表的datetime字段 我已验证我的SQL数据库当前处于夏令时模式 美国东海岸的偏移量为-5 插入SQL后,时间立即更改为上午9:43,增加一小时 这会告诉我某些UTC或时区转换不起作用 我甚至让我的DBA看到了这一点,但无法理解 我认为我们应该使用UTC偏移量存储datetime,但无法理解为什么上周末DST更改后才开始出现这种情况 谢谢。如果要保留偏移量,需要将其存储到日期时

我有一个日期2015-03-11T08:43:19.7810000-05:00,我正在插入MSSQLS2008数据库表的datetime字段

我已验证我的SQL数据库当前处于夏令时模式

美国东海岸的偏移量为-5

插入SQL后,时间立即更改为上午9:43,增加一小时

这会告诉我某些UTC或时区转换不起作用

我甚至让我的DBA看到了这一点,但无法理解

我认为我们应该使用UTC偏移量存储datetime,但无法理解为什么上周末DST更改后才开始出现这种情况


谢谢。

如果要保留偏移量,需要将其存储到
日期时间偏移量
字段中


datetime
字段不保存偏移量。因为您提供了一个,所以它被应用,但随后时间被标准化为本地时区,即所述日期的UTC-4。

是的,但东海岸现在是DST,实际上是UTC-4,因此您的时差为一小时。