Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server SQL Server时区更改_Sql Server_Sql Server 2005 - Fatal编程技术网

Sql server SQL Server时区更改

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

我在同一台SQL Server上有两个数据库。一个在PST中,另一个在EST中是否可能?

否,日期/时间是从运行SQL Server实例的计算机的操作系统派生的

但是,您可以使用一个自定义UDF来代替getdate()进行调用,然后在该UDF中更改时区。您还可以使用类似这样的方式为列指定默认值

CREATE TABLE Test (Val DATETIME DEFAULT  dateadd(hh,-3,GETDATE()))
现在,当您执行插入时,它将使用默认值

INSERT test DEFAULT VALUES

SELECT * FROM test
..这当然不适用于更新,也有人可以更新该值

如果要使用GMT,请使用
GETUTCDATE

SELECT GETUTCDATE()

这不包括夏令时。实现这一点的唯一方法是,如本例所示,使用时区表。


在较新的SQL版本中,这要容易得多,但在较旧的版本(2014年或更早)中,没有直接的方法来实现这一点。

将两者都作为UTC不是更好吗?