我使用了查询的这一部分来为添加行的日期和时间创建一个表列:
order_date datetime NOT NULL DEFAULT GETDATE()
每当创建新行时,order_date的数据都将设置为如下所示:
Apr 8 2014 9:52AM
出于某种原因,当创建一行并设置order_date列数据时,将小时设置回1小时。例如,上述Apr 8 2014 9:52AM的列数据设置为10:52 AM。

有什么办法可以将其设置为提前1小时,使其与我当前的时间正确吗?

感谢您的任何帮助。非常感谢所有帮助。

最佳答案

您应该考虑使用DATETIMEOFFSET作为数据类型,而不是DATETIME。



您可以将其与SYSDATETIMEOFFSET(一起使用。

Returns a datetimeoffset(7) value that contains the date and time of the computer on which the instance of SQL Server is running. The time zone offset is included.

例子:
 CREATE TABLE DateTest (id INT, order_date DATETIMEOFFSET NOT NULL DEFAULT SYSDATETIMEOFFSET())
 INSERT INTO DateTest (id) VALUES (1)
 SELECT * FROM DateTest

关于sql - 如何在日期时间SQL列数据中添加1小时?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22944063/

10-11 09:28
查看更多