sql >> Databáze >  >> RDS >> Mysql

Co znamená MySQL pod pojmem Počet sloupců neodpovídá počtu hodnot na řádku 1

Váš employee tabulka má 7 sloupců, ale pro insert dáváte 8 hodnot, což generuje chybovou zprávu, kterou dostáváte.

Dobrým zvykem je uvést sloupce pro insert ve výpisu. Díky tomu je tento typ chyby mnohem snazší odhalit, protože se nemusíte ohlížet zpět na definici tabulky (také to zabrání selhání vašeho dotazu, pokud někdy v budoucnu přidáte do tabulky nové sloupce - nebo odstranit existující sloupce).

INSERT INTO employee(emp_id, first_name, birth_day, sex, salary, super_id, branch_id)
VALUES(100, 'David', 'Wallace', '1967-11-17', 'M', 250000, NULL);

Vedlejší poznámka:neuvedený identifikátor first-name , který lze vidět v create table výpis pro employee , není platný – protože obsahuje pomlčku (- ). Předpokládám, že se jedná o překlep a místo toho jste mysleli podtržítko (first_name ).




  1. Získejte konkrétní časové období

  2. Poddotaz oracle v klíčovém slově je pomalý na 12c

  3. Mysql localhost !=127.0.0.1?

  4. Jak přidat dynamický sloupec do existující tabulky