DateTimeOffset值更改

时间:2013-03-31 12:42:48

标签: sql-server ssis datetimeoffset

我正在移动当前存储为int to DateTimeOffset的数据。

这里的示例是起始值1341190841,当我使用此查询时:

dateadd  (s,Call.StartTime, '1970-01-01') AS StartTimeDate

返回此值2012-07-02 01:00:41.000,这是正确的。但是,我正在使用SSIS将数据从一个数据库移动到另一个数据库,当数据在新表中时,StartTimeDate现在看起来像2012-07-02 01:00:41.0000000 +01:00

任何人都知道如何删除+01:00?我想保留第一个查询中的时间。

1 个答案:

答案 0 :(得分:3)

我无法重现这种行为(即使在不同的时区有两个SQL Server),所以这可能不是你想要的,但你可以“修复”TZ偏移(“+01:00”) )通过使用函数ToDateTimeOffset更新StartTimeDate列来复制数据之后:

UPDATE the_table SET StartTimeDate = TODATETIMEOFFSET(StartTimeDate, 0)

这将使偏移量保持不变,同时将偏移量调整到指定值(0,因为您希望它将TZ从+1调整为“0”。