MySQL 5.0から5.1へのアップグレード後に失敗した古いアプリケーションがあります。MySQLを強制的にTRADITIONALモードから解除する方法は?
これは、以前は自動的に妥当なものに変換された特定のタイプの「無効な」値を挿入しないようにする「厳密モード」によるものであることが示されました。
私はSET @@SESSION.sql_mode = ''
とSET @@GLOBAL.sql_mode = ''
を試しましたが、まだエラーが発生します。
my.ini
のsql_mode
もコメントしました。
この問題を解決するために、より強力な「核」オプションがありますか?無効な日付を許可する
これらの*合理的な置換は '0000-00-00'の日付、ENUMのフィールドの空文字列などの外部キーを含んでいます。私の経験では、 'WHERE start_date IS NULLが期待どおりに動作しないため、 'WHERE start_date IS NULL OR start_date = '0000-00-00''にする必要があります。運用環境に適切なSQLモードを適用してパッチを適用するだけでなく、開発ボックスに厳密なモードを適用してアプリケーションを修正しようとする必要があります。 –