私は、Springアプリケーション(テスト用)で組み込みデータベースとしてHSQLDBを使用しようとしています。対象となる本番データベースはOracleであるため、Oracle構文モードのHSQLDBを使用したいと考えています。Oracleクエリ構文モードでHSQLDBを使用するには?
SET DATABASE SQL SYNTAX ORA TRUE;
私のテストを実行している場合しかし、私は次のエラーを取得する:
私は私が書いた上部の<jdbc:embedded-database type="HSQL" id="dataSource"> </jdbc:embedded-database> <jdbc:initialize-database data-source="dataSource" enabled="true"> <jdbc:script location="classpath:schema.sql"/> </jdbc:initialize-database>
そしてschema.sqlでを使用春の設定で
java.sql.SQLException: Unexpected token: DATABASE in statement [SET DATABASE SQL SYNTAX ORA TRUE]
これは構文エラーですか、パーミッションエラーなのか、まったく違うのですか?
ありがとうございます - 回答につながる可能性のあるポインタについても。
HSQLがjdbc:embedded-databaseのSpringのデフォルトであり、ターゲットがOracleの場合、このシナリオは実際には非常に一般的であるはずです。しかし、私はウェブ上で問題に触れても何も見つけませんでした。
更新:
上記の問題は、回答#1のおかげで解決しました。
しかし、私は今、別の例外を取得:
org.springframework.dao.DataAccessResourceFailureException: Failed to populate database; nested exception is java.sql.SQLException: java.lang.RuntimeException: unsupported internal operation: StatementCommand unsupported internal operation: StatementCommand
これはによって引き起こされているものの任意のアイデア?
あなたは今までStatementCommandエラーの解決方法を見つけますか?私は今、同じ船にいます。 –
Oracle互換モードでH2データベースを代わりに使用してみませんか? – ebaxt