Sql server getdate()
函数获取服务器当前日期时间,如何从sql server实例获取客户端系统当前日期时间?。
我们的一个客户使用一个数据库为多个公司在不同时区运营,这是一个包含许多表,程序,函数和getdate()
函数的庞大数据库,被用作许多区域的默认值。
答案 0 :(得分:0)
你不能。 SQL Server并不知道调用它的客户端所在的时间。
请考虑使用getutcdate()
。在数据库中使用UTC,然后在应用程序层中的时区之间进行转换。
如果您认为需要在数据库本身的时区之间进行转换,则需要第三方解决方案,例如我的SQL Server Time Zone Support包。
答案 1 :(得分:0)
我有同样的问题。我找到了这个链接: https://social.msdn.microsoft.com/Forums/sqlserver/en-US/290a0085-47a5-48ab-9557-1b59ee269a40/call-getdate-from-linked-server?forum=transactsql
declare @rmt_time datetime;
exec('SET ? = CURRENT_TIMESTAMP', @rmt_time OUTPUT) at [remote_server];
select CURRENT_TIMESTAMP as local_time, @rmt_time as rmt_time;
希望这有帮助。