Mysql
 sql >> Baza danych >  >> RDS >> Mysql

MySQL #1364 – Pole „nazwa_kolumny” nie ma wartości domyślnej – nie można wstawić do bazy danych

Zdecydowanie nie jest to zapisywanie w bazie danych, ponieważ pole 'nazwa_kolumny' (i może kilka innych) jest zaznaczone jako "NOT NULL". Oznacza to, że wartość tego pola musi być inna niż NULL (NULL - brak danych)

Oznaczanie pól jako niepuste jest zwykle świetnym sposobem na zapewnienie, że niektóre dane będą zawsze obecne w polu. W zależności od potrzeb, możesz również oznaczyć go jako NULL, aby nigdy nie wywołał błędu i zapisał do bazy danych bez konieczności wstawiania czegokolwiek do określonego pola.

Oznacza to, że masz 2 opcje:

  1. Oznacz swoje pole jako NULL (najpierw sprawdź, czy Twoje pole musi mieć jakąś wartość, czy nie).

    ALTER TABLE `your_table` 
    CHANGE COLUMN `your_field` `your_field` VARCHAR(250) NULL;
    
  2. Dodaj domyślną wartość do pola, aby jeśli podczas wstawiania nie podano żadnych danych, wstawi się coś, co zdefiniowałeś. Na przykład:

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

I oczywiście dopasuj typ pola do pola, które zamierzasz zmienić.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dlaczego nie powinieneś używać mysql_fetch_assoc więcej niż 1 raz?

  2. Jak przetestować instrukcję SQL Update przed jej uruchomieniem?

  3. Wykonywanie wielu zapytań w codeigniter, których nie można wykonać pojedynczo

  4. Jak wyświetlić znaki UTF-8 w phpMyAdmin?

  5. Uzyskaj nazwę kolumny dynamicznie według określonej wartości wiersza