snuffkinの遊び場

IT関係、スポーツ、数学等に関することを、気が向いたときに書いてます。

テーブルが無いって言われた…

最近、ミバイボの機能追加のためにH2を利用して遊んでいますが、メモリDBのモードにした途端、「テーブルがありません」というエラーが続出しました。
最初の接続時にテーブルがなければ作成するようにしているし、ディスクDBのモードにしていればエラーは発生しない。「おかしいな…」と思って調べてみると、以下のようなページがありました。

H2 Database - メモリオンリーデータベースでは、デフォルトでcloseするとデータがなくなる!?

接続時のパラメータに「DB_CLOSE_DELAY=-1」と指定すれば解決するそうです。へえ〜そうだったんだ。closeすると本当にDBが消えるようですね。これは要注意。