Ihr employee
Tabelle hat 7 Spalten, aber Sie geben 8 Werte für Insert an, was die Fehlermeldung erzeugt, die Sie erhalten.
Eine gute Angewohnheit ist es, die Spalten für insert
aufzulisten in der Aussage. Dadurch ist diese Art von Fehler viel einfacher zu erkennen, da Sie nicht auf die Definition der Tabelle zurückblicken müssen (es verhindert auch, dass Ihre Abfrage fehlschlägt, wenn Sie irgendwann in der Zukunft jemals neue Spalten zur Tabelle hinzufügen - oder vorhandene Spalten löschen).
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);
Randnotiz:Bezeichner ohne Anführungszeichen first-name
, die in create table
zu sehen ist Aussage für employee
, ist nicht gültig, da es einen Bindestrich enthält (-
). Ich nehme an, das ist ein Tippfehler und du meintest stattdessen einen Unterstrich (first_name
).