MySQLはデフォルトで、列の無効な値を正しいタイプに強制しようとします。ここでは、空の文字列''
文字列型であり、整数でもNULLでもありません。次の手順を実行することをお勧めします:
- クエリを次のように変更します。
INSERT INTO foo (bar) VALUES (NULL);
- MySQLで厳密モードを有効にします。これにより、予期しないタイプと値の変換が発生するのを防ぐことができます。 MySQLが予期しないことを実行しようとすると、より多くのエラーメッセージが表示されるため、問題をより迅速に特定できます。