Mysql 错误代码:1136。列计数不为';第1行的值计数不匹配为什么?

Mysql 错误代码:1136。列计数不为';第1行的值计数不匹配为什么?,mysql,sql,sql-insert,Mysql,Sql,Sql Insert,为什么会有错误? 谢谢在不应该出现的值列表周围还有一对括号 这应该是: USE Airline; CREATE TABLE Responsible_for( Time_work TIME NOT NULL, date_work DATE NOT NULL, Staff_ID INT NOT NULL, Passenger_ID VARCHAR(45) NOT NULL, CONSTRAINT FOREIGN KEY(Passenger_ID) REFERENCES Passenger(Pas

为什么会有错误?
谢谢

在不应该出现的值列表周围还有一对括号

这应该是:

USE Airline;

CREATE TABLE Responsible_for(
Time_work TIME NOT NULL,
date_work DATE NOT NULL,
Staff_ID INT NOT NULL,
Passenger_ID VARCHAR(45) NOT NULL,
 CONSTRAINT FOREIGN KEY(Passenger_ID) REFERENCES Passenger(Passenger_ID),
 CONSTRAINT FOREIGN KEY(Staff_ID) REFERENCES Staff(Staff_ID));

SELECT * FROM airline.Responsible_for;
INSERT INTO  Responsible_for VALUES(
    ('04:00:00','2019-04-01',1235,'1102546778'));
注:

  • 一个好的做法是总是枚举要插入的列;这可以防止难以调试的问题,并且可以使代码适应目标表结构中的更改

  • 您可以在脚本的开头使用airline,因此在
    insert
    语句中不需要在表名前面加上模式名

  • 我建议不要将日期和时间组件存储在单独的列中;当您需要将其与日期时间进行比较时,这会使事情变得不必要的复杂(并且效率降低);MySQL具有
    datetime
    数据类型,这意味着将两者存储在一起

INSERT INTO Responsible_for(time_work, date_work, staff_id, passenger_id) 
VALUES ('04:00:00','2019-04-01',1235,'1102546778');