我使用了查询的这一部分来为添加行的日期和时间创建一个表列: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/