sql >> Database >  >> RDS >> Mysql

MySQL #1364 - Veld 'column_name' heeft geen standaardwaarde - kan niet in DB worden ingevoegd

Het slaat niet op in de database, zeker niet omdat het veld 'column_name' (en misschien enkele andere) is aangevinkt als "NIET NULL". Het betekent dat de waarde van dat veld iets anders moet zijn dan NULL (NULL - helemaal geen gegevens)

Velden markeren als niet null is meestal een goede manier om ervoor te zorgen dat sommige gegevens altijd in het veld aanwezig zijn. Afhankelijk van uw behoeften, kunt u het ook als NULL markeren, zodat het nooit een fout genereert en in DB wordt opgeslagen zonder dat er iets in een bepaald veld hoeft te worden ingevoegd.

Het betekent dat je 2 opties hebt:

  1. Markeer uw veld als NULL (controleer eerst of uw veld een bepaalde waarde moet hebben of niet).

    ALTER TABLE `your_table` 
    CHANGE COLUMN `your_field` `your_field` VARCHAR(250) NULL;
    
  2. Voeg een standaardwaarde toe aan het veld, dus als er geen gegevens worden verstrekt bij het invoegen, wordt iets geplaatst dat u hebt gedefinieerd. Bijvoorbeeld:

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

En stem natuurlijk uw veldtype af op het veld dat u gaat wijzigen.




  1. Semantisch zoeken gebruiken in SQL Server

  2. Gegevens bijwerken in een MySQL-database

  3. PHP Mysql PDO:Algemene fout:2006 MySQL-server is verdwenen

  4. 2 manieren om een ​​tabel op een gekoppelde server te maken met T-SQL