ログ日記

作業ログと日記とメモ

DbLuncherからh2に繋がらなくなった

s2jdbc-gen実行後だと、DbLuncherで立ち上げたh2のwebでSQLのsyntax errorが出てログインが出来なくなった。

org.h2.jdbc.JdbcSQLException: Syntax error in SQL statement SET
CREATE_BUILD[*] 70; expected AUTOCOMMIT, IGNORECASE, PASSWORD, SALT,
MODE, COMPRESS_LOB, DATABASE, COLLATION, CLUSTER,
DATABASE_EVENT_LISTENER, ALLOW_LITERALS, DEFAULT_TABLE_TYPE, CREATE,
HSQLDB.DEFAULT_TABLE_TYPE, CACHE_TYPE, FILE_LOCK, STORAGE,
DB_CLOSE_ON_EXIT, ACCESS_MODE_LOG, ASSERT, ACCESS_MODE_DATA, RECOVER,
SCHEMA, DATESTYLE, SEARCH_PATH, SCHEMA_SEARCH_PATH, LOGSIZE [42001-56]

...

org.h2.jdbc.JdbcSQLException: Syntax error in SQL statement SET
CREATE_BUILD[*] 70; expected AUTOCOMMIT, IGNORECASE, PASSWORD, SALT,
MODE, COMPRESS_LOB, DATABASE, COLLATION, CLUSTER,
DATABASE_EVENT_LISTENER, ALLOW_LITERALS, DEFAULT_TABLE_TYPE, CREATE,
HSQLDB.DEFAULT_TABLE_TYPE, CACHE_TYPE, FILE_LOCK, STORAGE,
DB_CLOSE_ON_EXIT, ACCESS_MODE_LOG, ASSERT, ACCESS_MODE_DATA, RECOVER,
SCHEMA, DATESTYLE, SEARCH_PATH, SCHEMA_SEARCH_PATH, LOGSIZE [42001-56]

Google グループ

表示されたエラーはこれとほぼ同じ。




検索したらPostgreSQLのドライバが使えるというのを見つけて、プロジェクトの「実行の構成」「DbLuncher」「クラスパス」にpostgresql.jarを追加してWebからドライバクラスをorg.postgresql.Driverに変更して(JDBC URLはjdbc:h2:tcp://localhost/dbnameのまま)接続したら繋がった。


試しにドライバをh2に戻したら、繋がってしまって、訳が分からないまま解決してしまった。
「実行の構成」「DbLuncher」「クラスパス」の設定が自動で書き換わってるように思えるが…また再現したら書く。