開発用に使っていたDBを変えたところ、とあるクエリがINSERTできなくなる事案が発生。 どうやらMySQLのsql_modeのひとつであるStrict Modeが原因のようでした。 そもそもStrict Modeを知らなかったのでそのメモ書きです。 環境 CentOS 6.4 MySQL 5.6.21 Strict Modeとは 日本語にすると厳格モード INSERT や UPDATE実行時に不正な値を入れないようにするためのもの ちなみにINSERT IGNORE や UPDATE IGNOREで始まるようにするとエラー回避できる 細かい挙動を扱うために、複数のモードを選択することができる 設定例 /usr/my.cnf sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES #有効 # sql_mode='' #無効 mysqlのコマン