模拟SQL Server实例上的当前日期?

Ale*_*ith 7 sql-server getdate

是否可以更改SQL Server上特定数据库的日期时间?

它是否与操作系统的日期/时间相关联?

我们希望模拟未来的日期时间以进行测试,即GETDATE()返回日期.

它必须处于半生产(临时)环境中,所以不幸的是,改变操作系统日期/时间对我们来说不是一个选择.

在一个理想的世界中,我们会启动一个虚拟服务器,但目前还不是一个真正的选择.

Doo*_*ake 3

正如其他人所说,没有。

一个非常棘手的解决方法是编写自己的函数来返回所需的日期,并在完成测试后让它返回 GETDATE() ,然后调用该函数。这样做可能会产生一些轻微的开销,但它会满足您的需要。

  • 为了热爱所有神圣的事物,请不要将您的新函数称为 getdate。我想不出比为自己的目的而选择内置函数的名称更容易产生混乱的方法了。如果您已经更改代码库以适应新功能,请明显表明它正在执行其他操作。天啊,MYGETDATE 会更好。 (2认同)