H2 1.4.191を使用して、本番環境でDB2に対して実行されるコードの一部を単体テストします。私はthis-H2でMODEをDB2として照会する
CREATE SEQUENCE TABLENAME_SEQ
START WITH 1
INCREMENT BY 1
NO CYCLE
CACHE 50;
のようにH2とDB2の両方でシーケンスを作成し、コードはコードは基本的にDB2に対して実行することを意図されているので、それはSYSIBM.SYSDUMMY1
に対して選択するthis-
SELECT NEXTVAL FOR TABLENAME_SEQ FROM SYSIBM.SYSDUMMY1
ようにそれを問い合わせます。
単体テストのH2 URLは、モードをDB2として指定します。これは、H2がSYSIBM.SYSDUMMY1に対してクエリを実行するか、ここで何か不足していることを意味します。ここで
jdbc:h2:./testdb;MV_STORE=FALSE;MVCC=FALSE;MODE=DB2
は私が org.h2.jdbc.JdbcSQLExceptionをGET-エラーです:SQLステートメントの構文エラーは、 "SYSIBM.SYSDUMMY1 FROM TABLENAME_SEQ FOR NEXTVALを選択"; SQL文:SYSIBM.SYSDUMMY1 FROM TABLENAME_SEQ FOR SELECT NEXTVAL [42000から191]
私はQ配列から選択するためのH2のsystaxが異なっていることを知っているが、私はモード= DB2を指定するので、それはDB2のsystaxで動作するはず?