0

我正在尝试创建一个新表并将值插入其中,但是我不断收到“#1241 - 操作数应包含 1 列”。请有人帮忙确定我的代码有什么问题,因为我不确定这个错误是指什么?

我在 SQL 选项卡下插入 phpMyAdmin 数据库的代码。我试图删除自动增量属性并尝试查看其他示例来检查我的语法,但我无法发现问题。对此的一些指导将不胜感激。

我输入的代码是这样开始的:

# AppSoft Project - Greg Roberts

DROP table if exists Department;
DROP table if exists Role;
DROP table if exists User;
DROP table if exists Appraisal;
DROP table if exists Question;
DROP table if exists Answer;

CREATE table Department(
    DeptID int NOT NULL AUTO_INCREMENT,
    DeptName varchar(30) NOT NULL,
    primary key (DeptID));

INSERT into Department values(
    (00, 'SuperAdmin'),
    (01, 'Support Staff'),
    (02, 'Teaching Staff'),
    (03, 'SLT'));

CREATE table Role(
    RoleID int NOT NULL AUTO_INCREMENT,
    RoleTitle varchar(30) NOT NULL,
    primary key (RoleID));

INSERT into Role values(
    (00, 'SuperAdmin'),
    (01, 'Office Administrator'),
    (02, 'Teaching Partner'),
    (03, 'Mid Day Supervisor'),
    (04, 'Cooks'),
    (05, 'Cleaners'),
    (06, 'Maintenance'),
    (07, 'Teacher'),
    (08, 'Department Head'),
    (09, 'SENCO'),
    (10, 'Head Teacher'),
    (11, 'Executive Head'));

发生的错误代码

4

1 回答 1

1

如果主键设置为 auto_increment,则不需要插入主键。

DeptID int NOT NULL AUTO_INCREMENT

只需插入部门名称,Values 不需要额外的大括号。

INSERT into Department( DeptName) values 
('SuperAdmin'),
('Support Staff'),
('Teaching Staff'),
('SLT');

您也需要对 Role 表执行相同的操作。

此外,如果您尝试插入0主键,它实际上会插入您可以在标准文档1中阅读它

您似乎遇到了错误,因为您的第一条记录插入1到表中,然后您的第二条记录尝试1再次插入主键列

于 2020-02-20T13:37:52.800 回答