需要帮助如何解决这个问题... 我创建了一个包含以下列的用户表
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
我的uid
有AUTO_INCREMENT
所以它会自动增加..
答案 0 :(得分:4)
当然auto_increment
正常运作。您只需要了解有关使用insert
的最佳做法。 始终列出所有列(除非你真的,真的知道你在做什么):
Insert into users (uname, password, email)
values('SDC', 'Helloworld', 'SDC@gmail.com');
id列将自动递增。如果没有列出列,那么MySQL期望所有列的值,包括自动递增的列。