H2 in memory データベースを使用して開発モードで作業していますが、可能な限り mysql データベースのように動作させたいと考えています ( http://www.h2database.com/html/features.html#compatibilityを参照) 。
これは、application.conf ファイルでの私の構成です。
db.default.driver=org.h2.Driver
db.default.url="jdbc:h2:mem:play;MODE=MYSQL;DB_CLOSE_DELAY=-1"
それをテストするには、「play」を実行し、play のコンソールから「h2-browser」を発行し、URL jdbc フィールドに「jdbc:h2:mem:play;MODE=MYSQL;DB_CLOSE_DELAY=-1」と入力します。
次のステートメントは mysql で正常に機能します。
CREATE TABLE `tmp` (
`name` varchar(50) NOT NULL
);
insert into tmp (name) values ('slash: \\, simple quotes \', double quotes \" -');
select * from tmp;
しかし、h2コンソールではエラーが発生し、エスケープできる唯一の文字は単一引用符であり、その前に別の一重引用符を付けるだけです。(「SET MODE MySQL;」も入力してみました)
play のフレームワーク h2-browser の mysql のように h2 を動作させる方法はありますか? それともh2の制限ですか?