sql >> データベース >  >> RDS >> Mysql

MySQL#1364-フィールド'column_name'にデフォルト値がありません-DBに挿入できません

    フィールド'column_name'(およびおそらく他のいくつか)が "NOT NULL"としてチェックされているため、データベースに確実に保存されていません。これは、そのフィールドの値がNULL以外のものでなければならないことを意味します(NULL-データなし)

    フィールドをnullでないものとしてマークすることは、通常、一部のデータが常にフィールドに存在することを保証するための優れた方法です。必要に応じて、NULLとしてマークすることもできるため、エラーがスローされることはなく、指定されたフィールドに何も挿入しなくてもDBに保存されます。

    これは、2つのオプションがあることを意味します:

    1. フィールドをNULLとしてマークします(最初に、フィールドに何らかの値が必要かどうかを確認します)。

      ALTER TABLE `your_table` 
      CHANGE COLUMN `your_field` `your_field` VARCHAR(250) NULL;
      
    2. フィールドにデフォルト値を追加して、挿入時にデータが提供されない場合、定義したものが配置されるようにします。例:

      ALTER TABLE `your_table` CHANGE COLUMN `your_field` `your_field` VARCHAR(250) NOT NULL DEFAULT 'some_default_value';
      

    そしてもちろん、フィールドタイプを変更するフィールドに一致させます。




    1. SQLServerの動的ピボットテーブル

    2. IRIWorkbenchでのテーブルフィルタリング

    3. SQL Server(T-SQL)で短い日の名前を取得する

    4. MySQLでクロス集計/ピボットクエリを使用することは可能ですか?