Auto_Increment 不处理插入查询

Auto_Increment not working on insert query

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

Create table users
(
  uid int(10) PRIMARY KEY AUTO_INCREMENT,
  uname varchar(50),
  password varchar(50),
  email varchar(50)
);

当我使用 uid 插入值时,它会成功执行:

Insert into users values(1,'ABC','Helloworld','ABC@gmail.com');

但是当我尝试不使用 uid

Insert into users values('SDC','Helloworld','SDC@gmail.com');

没有执行成功报错

ERROR 1136 (21S01): Column count doesn't match value count at row 1

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

当然 auto_increment 工作正常。您只需要学习有关使用 insert 的最佳实践。 始终 列出所有列(除非您真的非常知道自己在做什么):

Insert into users (uname, password, email)
    values('SDC', 'Helloworld', 'SDC@gmail.com');

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