主键auto_increment在MYSQL上不起作用

问题描述 投票:1回答:1
CREATE TABLE people (
    id INT NOT NULL AUTO_INCREMENT,
    first_name VARCHAR(50) NOT NULL,
    salary INT NOT NULL,
    PRIMARY KEY (id)
);

我的插入语句

INSERT INTO people
VALUES
('Austin', 65000),
('Josh', 100000),
('Pettea', 55000)
;
mysql sql primary-key auto-increment
1个回答
0
投票

应该是:

INSERT INTO people(first_name, salary)
VALUES
('Austin', 65000),
('Josh', 100000),
('Pettea', 55000);

尝试一下。

[这里是一个有用的小提琴:https://www.db-fiddle.com/f/rW6QyPbyEMvZhcskipBpaX/0点击“运行”。

编辑:我想我读错了您的评论:在这种情况下,您需要指定要插入数据的列。现在,您的查询正在尝试将两列数据值插入三列表中。 INSERT INTO peopleINSERT INTO people(id,first_name,salary)相似,因此插入两列数据会返回Column count doesn't match value count at row 1错误。如果您这样做,则可以接受:

INSERT INTO people
VALUES
(1,'Austin', 65000),
(2,'Josh', 100000),
(3,'Pettea', 55000);

但是由于某种原因,您将id列设为AUTO_INCREMENT,因此无需手动填充。

© www.soinside.com 2019 - 2024. All rights reserved.