1

我在数据类型 datetime 的 sql 表中有 dateTimeAuth 列,它的默认值是 (getdate()) 如果我在离线模式下运行我的项目,它会返回我当前时间。当我将它上传到实时服务器时,它会存储默认时区 GMT 的当前时间。我希望根据 IST 存储值。如何做呢 ?

根据 GMT 存储的值:2010 年 8 月 26 日下午 1:02:28 根据 IST 的实际时间:2010 年 8 月 26 日下午 7:02:28

4

1 回答 1

3

getdate() 将始终返回服务器所在的日期和时间。如果您想要用户时区的日期和时间,则需要从应用程序发送日期并将其作为常规 dateTime 变量插入

但如果您使用的是 SQL 2008,则可以使用

SELECT SYSDATETIMEOFFSET()

获取您所在时区的日期。您还可以为其添加日期(从 UTC = IST +5:30)

SELECT SWITCHOFFSET(SYSDATETIMEOFFSET(), '+05:30')
于 2012-08-29T08:31:14.893 回答