【发布时间】:2014-03-27 22:17:20
【问题描述】:
jdbc:h2:mem:request_no;MODE=Oracle
我们在 windows 7(64 位)和 jdk 1.7.0_25 中使用 h2 版本 1.3.171。
当我们尝试运行 SQL 语句时:
WITH TMP1 AS (SELECT col1 FROM table1) SELECT TMP1.col1 FROM TMP1
我们得到以下异常:
org.h2.jdbc.JdbcSQLException: Syntax error in SQL statement
"WITH TMP1 AS[*] (SELECT REQUEST_NO FROM QUOTE)
SELECT TMP1.REQUEST_NO FROM TMP1";
expected "., ("; SQL statement:
WITH TMP1 AS (SELECT REQUEST_NO FROM QUOTE)
SELECT TMP1.REQUEST_NO FROM TMP1 [42001-171]
SQL 语句很好,我们可以通过 SQL Developer 成功执行它。
感谢任何帮助。
谢谢。
【问题讨论】:
-
你用的是什么数据库?
-
H2 不支持正则公用表表达式,它只支持递归 CTE:h2database.com/html/advanced.html#recursive_queries