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

1231: Variable can't be set to the value of ...(変数を ... の値に設定できない)

MySQL

意味

(SET で) システム/セッション変数に代入しようとしている値が無効である。許容される集合の範囲外、誤った型、または不適切な書式のため値が拒否された。

原因

よくある例: sql_mode への無効/綴り誤りのモード名の代入、enum 変数への未定義のオプションの指定、または NULL を受け付けない変数への NULL の代入。誤った単位/範囲の数値でも発生する。

対処方法

変数が受け付ける有効な値と型を確認する。ENUM/SET 型の変数 (例: SET 型である sql_mode) では、値/モード名を正確に綴り、複数の値はカンマで区切る。有効な値の範囲をドキュメントで確認する。sql_mode のようなリストでは、現在の値を読み取り (SELECT @@sql_mode)、その上で安全に項目を追加/削除する。

DBAtlas で開く →

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