Auto_Increment 不适用于插入查询

pra*_*uri 2 mysql sql insert primary-key auto-increment

需要帮助如何解决这个问题...我创建了一个用户表,其中包含以下列

Create table users
(
  uid int(10) PRIMARY KEY AUTO_INCREMENT,
  uname varchar(50),
  password varchar(50),
  email varchar(50)
);
Run Code Online (Sandbox Code Playgroud)

当我插入值时uid它执行成功:

Insert into users values(1,'ABC','Helloworld','ABC@gmail.com');
Run Code Online (Sandbox Code Playgroud)

但是当我尝试没有 uid

Insert into users values('SDC','Helloworld','SDC@gmail.com');
Run Code Online (Sandbox Code Playgroud)

它没有成功执行并给出错误

ERROR 1136 (21S01): Column count doesn't match value count at row 1
Run Code Online (Sandbox Code Playgroud)

uidAUTO_INCREMENT所以它应该自动增加..

Gor*_*off 6

当然auto_increment工作正常。您只需要学习有关使用insert. 总是列出所有的列(除非你真的,真的知道你在做什么):

Insert into users (uname, password, email)
    values('SDC', 'Helloworld', 'SDC@gmail.com');
Run Code Online (Sandbox Code Playgroud)

id 列将自动递增。如果您没有列出列,那么 MySQL 需要所有列的值,包括自动递增的列。