ホームページ > データベース > mysql チュートリアル > MySQL エラー 1364:「フィールドにデフォルト値がありません」を修正する方法?

MySQL エラー 1364:「フィールドにデフォルト値がありません」を修正する方法?

Barbara Streisand
リリース: 2024-12-28 18:49:11
オリジナル
649 人が閲覧しました

How to Fix MySQL Error 1364:

MySQL エラー 1364: 「フィールドにデフォルト値がありません」の解決

MySQL テーブルに挿入しようとすると、 「フィールド 'CREATED_BY' にはデフォルト値がありません」というエラー メッセージが表示される (エラー1364)。この問題は、テーブル フィールドが NOT NULL 制約で定義されているがデフォルト値がなく、挿入しようとしたときにそのフィールドの値が明示的に指定されていない場合に発生します。

このエラーを解決するには、次のオプションがあります。 :

  • STRICT_TRANS_TABLES SQL を無効にするモード:

    • MySQL 構成ファイル (%PROGRAMDATA%MySQLMySQL Server 5.6my.ini) に移動します
    • 「sql-mode=STRICT_TRANS_TABLES」を含む行を見つけます
    • その行を削除するか置き換えます"sql-mode=STRICT_TRANS_TABLES" を空の文字列で指定します
    • MySQL を再起動します
  • 代替構成ファイルの場所を確認します:

    • 上記を変更する場合構成ファイルでは問題が解決されません。これらの追加の可能性を調べてください。場所:

      • /etc/my.cnf
      • /etc/mysql/my.c nf
      • ~/.my.cnf
  • 明示的Insert ステートメントでフィールド値を指定する:

    • 前述の方法が適切でない場合は、insert ステートメントですべての null 非許容フィールドの値を明示的に指定します。例:

      insert into try (name, CREATED_BY) values ('abc', 'admin');
      ログイン後にコピー

注: このエラーを抑制するためにフィールドを NULL 可能にしたり、トリガーを削除したりすることはお勧めできません。これらのソリューションはデータの整合性を損ない、他のアプリケーションで問題を引き起こす可能性があります。

以上がMySQL エラー 1364:「フィールドにデフォルト値がありません」を修正する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート