根据sqlServer中的客户端时区存储当前日期时间

时间:2012-08-29 08:08:55

标签: sql sql-server time timezone

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

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

1 个答案:

答案 0 :(得分:3)

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

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

SELECT SYSDATETIMEOFFSET()

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

SELECT SWITCHOFFSET(SYSDATETIMEOFFSET(), '+05:30')