sql >> Databasteknik >  >> RDS >> Mysql

Vad betyder MySQL med att kolumnantal stämmer inte överens med värderäkning på rad 1

Din employee Tabellen har 7 kolumner, men du ger 8 värden för infogning, vilket genererar felmeddelandet som du får.

En god vana är att lista kolumnerna för insert i uttalandet. Detta gör den här typen av fel mycket lättare att upptäcka, eftersom du inte behöver titta tillbaka på definitionen av tabellen (det förhindrar också att din fråga misslyckas om du någon gång lägger till nya kolumner i tabellen någon gång i framtiden - eller släpp befintliga kolumner).

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);

Sidanteckning:ID utan citat first-name , som kan ses i create table uttalande för employee , är inte giltig - eftersom den innehåller ett bindestreck (- ). Jag antar att det är ett stavfel och du menade ett understreck istället (first_name ).




  1. Det går inte att delta i en distribuerad transaktion med NHibernate

  2. problem med främmande nyckel i jdbc

  3. UNPIVOT på ett obestämt antal kolumner

  4. Finns det något sätt att göra en hel MySQL-rad unik