如何在H2中设置sysdate? (供测试用)

时间:2018-08-18 13:46:47

标签: java sql spring integration-testing h2

我使用H2进行测试,并且想要设置sysdate

我尝试为自己的实现创建sysdate的别名,但是后来无法将其与sysdate - ?之类的算法一起使用。例外:Unknown data type: "?"

我试图在运行时将sysdate字符串替换为timestamp '2018-01-01 11:11:11.123'parsedatetime('2018-01-01 11:11:11.123', 'yyyy-MM-dd hh:mm:ss.SSS')之类的字符串。就像以前的尝试一样,也有同样的例外。

是的,我可以在所有sql中添加cast(? as number),但这对我来说不是一个好的解决方案。

您有什么想法,我该怎么办?

ps:我也使用Spring。也许会有帮助

1 个答案:

答案 0 :(得分:0)

如果一次使用两个数据库,则应避免使用特定于供应商的语法。

您可以使用符合SQL标准的

LOCALTIMESTAMP - INTERVAL '30' MINUTE

在Oracle和H2的最新版本中。

我已经遇到了这个问题,这就是解决问题的方法。