employee
của bạn bảng có 7 cột, nhưng bạn đang cung cấp 8 giá trị cho chèn, điều này tạo ra thông báo lỗi mà bạn đang nhận được.
Một thói quen tốt là liệt kê các cột cho insert
trong tuyên bố. Điều này làm cho loại lỗi này dễ phát hiện hơn nhiều, vì bạn không cần phải nhìn lại định nghĩa của bảng (nó cũng ngăn truy vấn của bạn không thành công nếu bạn thêm cột mới vào bảng tại một thời điểm nào đó trong tương lai - hoặc bỏ các cột hiện có).
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);
Lưu ý bên:số nhận dạng chưa được trích dẫn first-name
, bạn có thể thấy điều đó trong create table
câu lệnh cho employee
, không hợp lệ - vì nó chứa dấu gạch ngang (-
). Tôi cho rằng đó là lỗi đánh máy và thay vào đó, ý của bạn là dấu gạch dưới (first_name
).