ホームページ >データベース >mysql チュートリアル >MySQL でエラー 1364:「フィールドにデフォルト値がありません」がスローされるのはなぜですか?それを修正するにはどうすればよいですか?

MySQL でエラー 1364:「フィールドにデフォルト値がありません」がスローされるのはなぜですか?それを修正するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-22 03:17:10484ブラウズ

Why Does MySQL Throw Error 1364:

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

エラー メッセージ「フィールド 'CREATED_BY' にはデフォルト値がありません」が表示されるデフォルト値」の根本原因を理解することが重要です。このエラーは通常、テーブルの列にデフォルト値がない場合に発生します。この場合、トリガーは、挿入時に「CREATED_BY」フィールドにユーザーの ID を自動的に入力するように定義されています。

このエラーを解決するには、STRICT_TRANS_TABLES SQL モードを無効にすることが重要です。このモードは、MySQL 構成ファイル (my.ini または my.cnf) で定義されます。変更を行うには、MySQL インストール ディレクトリでファイルを見つけ、次の行を編集します:

[mysql]
sql-mode = STRICT_TRANS_TABLES

次に示すように、sql-mode ディレクティブから STRICT_TRANS_TABLES を削除します:

[mysql]
sql-mode =

変更を保存し、MySQL サービスを再起動します。これにより、列を NULL 可能にしたりトリガーを削除したりせずに、エラーが解決されます。

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。