2017-03-02 95 views
0

需要帮助如何解决这个问题? 我创建了具有以下的列AUTO_INCREMENT不工作插入查询

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','[email protected]'); 

但是当我尝试不uid

Insert into users values('SDC','Helloworld','[email protected]'); 

它不会成功执行,并给出了一个错误

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

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

回答

1

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

Insert into users (uname, password, email) 
    values('SDC', 'Helloworld', '[email protected]'); 

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

+0

感谢它的工作... –