【发布时间】:2015-11-14 13:45:01
【问题描述】:
HSQLDB 在 Oracle 语法中似乎不支持 NOWAIT。
HSQLDB 版本:2.3.3
与
SET DATABASE SQL SYNTAX ORA TRUE;
SQL 产生的异常
select a, b, c from sometable where id=1 for update NOWAIT
例外
Caused by: org.hsqldb.HsqlException: unexpected token: NOWAIT
at org.hsqldb.error.Error.parseError(Unknown Source)
at org.hsqldb.ParserBase.unexpectedToken(Unknown Source)
at org.hsqldb.ParserCommand.compileStatement(Unknown Source)
at org.hsqldb.Session.compileStatement(Unknown Source)
at org.hsqldb.StatementManager.compile(Unknown Source)
at org.hsqldb.Session.execute(Unknown Source)
- 有谁知道 HSQLDB 不支持这个吗?
- 任何想法如何在不修改原始 SQL 的情况下避免此异常。我可以在单元测试中忽略NOWAIT 功能,但不能修改SQL。附加信息:我们使用 spring-jbdc 和 JdbcTemplate 并考虑拦截它以用 NOWAIT 替换 sqls 作为 JUnit 测试设置中的 hack。
【问题讨论】:
标签: oracle hsqldb spring-jdbc