DBAtlas · データベース運用アトラス

1048: Column 'x' cannot be null(列は NULL にできない)

MySQL

意味

NOT NULL として定義された列に NULL を挿入しようとした、またはその列を NULL に設定しようとした。必須フィールドを空にすることはできない。

原因

INSERT で必須列に値が指定されていない、UPDATE で列を NULL に設定した、列に DEFAULT がない、アプリケーション/副クエリから空の値が渡された、厳格 SQL モードでは空の値が暗黙に補完されない。

対処方法

必須列に有効な値を指定する。列に適切なデフォルトを定義する: ALTER TABLE my_table MODIFY my_column INT NOT NULL DEFAULT 0; ルールが不要なら NULL を許可する: ALTER TABLE my_table MODIFY my_column INT NULL; 空の値は送信前にアプリケーションで検証する。

DBAtlas で開く →

同じデータベースの他の項目