在 HSQLDB 2.0.0-rc8 中选择下一个序列值的“正确”方法
假设我有一个序列,称为TEST_SEQ选择其下一个值的正确方法是什么?这不起作用:
select next value for TEST_SEQ
可能是因为它需要一个“FROM”子句。看看HSQLDialect.getSequenceNextValString()在休眠状态下,我看到了这个:
"select next value for " + sequenceName + " from dual_" + sequenceName
在我的情况下,这将导致如下结果:
select next value for TEST_SEQ from dual_TEST_SEQ
这不适用于2.0.0-rc8(我只假设这在2.0之前的版本中有效 - 尚未验证)我遇到了一个解决方案,涉及创建一个名为DUAL的1行的简单表,在这种情况下,这将起作用(oracle样式):
select next value for TEST_SEQ from DUAL
但是hsqldb没有开箱即用地附带这个表,我不确定我如何在“第一次启动”时进入休眠状态来生成这样的表。
我认为必须有一种方法可以开箱即用地获取序列的下一个值,而我只是错过了它。任何想法?