Sql server SQL Server时区更改
我在同一台SQL Server上有两个数据库。一个在PST中,另一个在EST中是否可能?否,日期/时间是从运行SQL Server实例的计算机的操作系统派生的 但是,您可以使用一个自定义UDF来代替getdate()进行调用,然后在该UDF中更改时区。您还可以使用类似这样的方式为列指定默认值Sql server SQL Server时区更改,sql-server,sql-server-2005,Sql Server,Sql Server 2005,我在同一台SQL Server上有两个数据库。一个在PST中,另一个在EST中是否可能?否,日期/时间是从运行SQL Server实例的计算机的操作系统派生的 但是,您可以使用一个自定义UDF来代替getdate()进行调用,然后在该UDF中更改时区。您还可以使用类似这样的方式为列指定默认值 CREATE TABLE Test (Val DATETIME DEFAULT dateadd(hh,-3,GETDATE())) 现在,当您执行插入时,它将使用默认值 INSERT test DEFA
CREATE TABLE Test (Val DATETIME DEFAULT dateadd(hh,-3,GETDATE()))
现在,当您执行插入时,它将使用默认值
INSERT test DEFAULT VALUES
SELECT * FROM test
..这当然不适用于更新,也有人可以更新该值
如果要使用GMT,请使用GETUTCDATE
SELECT GETUTCDATE()
这不包括夏令时。实现这一点的唯一方法是,如本例所示,使用时区表。
在较新的SQL版本中,这要容易得多,但在较旧的版本(2014年或更早)中,没有直接的方法来实现这一点。将两者都作为UTC不是更好吗?