EbeanとMySQL 5.5系を組み合わせる場合の注意
いつからかのEbean(Play Framework 2.4が出た辺り?)から、MySQL向けに自動生成されるSQLのうち、JavaのモデルでDate
型となっているカラムのcreate文がdatetime(6)
になっている。
MySQL 5.5系では、datetime(6)
は無効なため、datetime
に書き換えないといけない。
そのため、MySQL 5.5系を使用する場合、confで
play.evolutions.db.default.autoApply = true
を設定していても自動的にSQLが適用されない場合があるため注意。
また、開発中のデータベースとしてH2を使用する場合もあるが、H2をMySQLモードで利用していると、カラムのcreate文がtimestamp
になってしまう。1テーブル内にtimestamp
型のカラムが複数あると勝手に初期値が設定される等意図しない動作になりやすいため、そもそもH2は使用しないことをお勧めする。