如何更新 SQL 服务器中列的偏移量?

How do I update a column's offset in SQL Server?

我将 table 的 DateTime 字段转换为 DateTimeOffset,但现在偏移量自动设置为 +00:00

我需要将此 table 的 all DateTimeOffset 字段更改为 +1:00 的偏移量。

如何在更新查询中执行此操作?

您可以使用SWITCHOFFSET 来更改偏移量。如果您不想更改日期,则需要从日期中减去小时数。

SELECT  SWITCHOFFSET(DATEADD(hh, -1, CAST (GETDATE() AS DATETIMEOFFSET)),
                         '+01:00')
DECLARE @t DATETIMEOFFSET

SELECT @t = Getdate()

SELECT Replace(@t, RIGHT(@t, 6), '+01:00') 

<update tablename set offsetfield = Replace(offsetfield, RIGHT(offsetfield, 6), '+01:00')>

您可以使用 TO DATETIMEOFFSET(datetime, '+01:00' ) 这不会影响日期时间部分。