Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

MySQL #1364 - O campo 'column_name' não tem um valor padrão - Não é possível inserir no banco de dados


Não está salvando no banco de dados definitivamente porque o campo 'column_name' (e talvez alguns outros) está marcado como "NOT NULL". Isso significa que o valor desse campo deve ser algo diferente de NULL (NULL - sem dados)

Marcar campos como não nulos geralmente é uma ótima maneira de garantir que alguns dados sempre estejam presentes no campo. Dependendo de suas necessidades, você também pode marcá-lo como NULL para que nunca gere um erro e salve no banco de dados sem a necessidade de inserir nada em um campo especificado.

Isso significa que você tem 2 opções:

  1. Marque seu campo como NULL (primeiro verifique se seu campo precisa ter algum valor ou não).
    ALTER TABLE `your_table` 
    CHANGE COLUMN `your_field` `your_field` VARCHAR(250) NULL;
    

  2. Adicione um valor padrão ao campo para que, se nenhum dado for fornecido na inserção, ele colocará algo que você definiu. Por exemplo:
    ALTER TABLE `your_table` CHANGE COLUMN `your_field` `your_field` VARCHAR(250) NOT NULL DEFAULT 'some_default_value';
    

E, claro, combine seu tipo de campo com o campo que você vai alterar.