Mysql
 sql >> база данни >  >> RDS >> Mysql

MySQL #1364 - Полето 'column_name' няма стойност по подразбиране - Не може да се вмъкне в DB

Определено не се записва в базата данни, защото полето 'column_name' (и може би някои други) е отметнато като "NOT 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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Използване на обратни отметки около имената на полета

  2. Висока наличност при ограничен бюджет - внедряване на MySQL Galera Cluster с минимален два възела

  3. Автоматичното увеличение на mysql ID не започва от 0

  4. PHP формулярът не качва файл

  5. Как да модифицирате PHP/Jquery/Ajax скрипт, за да има повече от едно поле за формуляр postst