sql >> Base de Datos >  >> RDS >> Mysql

MySQL #1364 - El campo 'column_name' no tiene un valor predeterminado - No se puede insertar en la base de datos

Definitivamente no se está guardando en la base de datos porque el campo 'column_name' (y tal vez algunos otros) está marcado como "NO NULO". Significa que el valor de ese campo debe ser diferente a NULL (NULL - sin datos)

Marcar campos como no nulos suele ser una excelente manera de garantizar que algunos datos siempre estarán presentes en el campo. Según sus necesidades, también puede marcarlo como NULL para que nunca arroje un error y se guarde en la base de datos sin necesidad de insertar nada en un campo específico.

Significa que tienes 2 opciones:

  1. Marque su campo como NULL (primero verifique si su campo debe tener algún valor o no).

    ALTER TABLE `your_table` 
    CHANGE COLUMN `your_field` `your_field` VARCHAR(250) NULL;
    
  2. Agregue un valor predeterminado al campo para que, si no se proporcionan datos al insertar, se coloque algo que usted definió. Por ejemplo:

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

Y, por supuesto, haga coincidir su tipo de campo con el campo que va a cambiar.