SQL Server数据库的时区系统时区不同

问题描述 投票:4回答:2

谁能帮我一个建议,我怎么能实现以下的东西:

我在安装我的SQL Server的系统的。

但是,我想为我的SQL Server中没有系统中的时区数据库不同的时区。

sql-server-2008 sql-server-2005
2个回答
8
投票

SQL Server没有一个时区的概念。它继承了从Windows系统时间,并使用实时的。例如,如果您安装SQL Server在系统处于一个时区,并更改服务器不同的时区,下次你打电话GETDATE()时间将反映新的时区,而不是一个是在使用中时间的SQL Server安装。

在这种情况下,我认为你应该始终将存储UTC数据(例如,使用GETUTCDATE()代替GETDATE()。更容易转换后到你想要的(或者任何一个!)时区,如.NET拥有各种内置功能,可以处理这个给你。


0
投票

我会建议(在这个例子中EST)使用此

SYSDATETIMEOFFSET() AT TIME ZONE 'Eastern Standard Time' 

这回精确的时间日期与任何选择的时区偏移量。这种做法将不依赖于服务器时区。

© www.soinside.com 2019 - 2024. All rights reserved.