日本製のオープンソースECソフト、EC-CUBE 2.3.3 を MySQL で使おうとしたけれど、配送設定で複数の配送時間を登録しようとするとエラーが起きてログイン画面に遷移してしまう。PostgreSQL に変えてみてからは、問題は起きていない。
EC-CUBE はもともと Postgres用らしく、開発者も Postgres を使っているとのこと。なので、PostgreSQL を使える環境なら、迷わず Postgres にした方がよさそう。MySQL でも何となく動いてはいたけど、配送時間の登録ごときでシステムエラーになってしまうようでは、先が思いやられる。フォーラムの書き込みなどを見ると、速度も Postgres を使う方が速いらしい。
ちなみに、配送時間の登録で出たエラーはこれ。(data/logs/site.log)
INSERT INTO dtb_delivtime(deliv_time,deliv_id,time_id) VALUES ('18:00 ~ 0:00','3',15) [nativecode=1062 ** Duplicate entry '15' for key 1]
dtb_delivtime とはどんなテーブルだろう?