Mysql 设置自动增量并使其在INSERT命令中自动赋值?

Mysql 设置自动增量并使其在INSERT命令中自动赋值?,mysql,sql,database,Mysql,Sql,Database,我在MySQL数据库中尝试自动增加ID列时遇到了一些困难。每个表的主键都已分配,所以现在我尝试使它们自动递增。我尝试了以下方法,但没有成功: ALTER TABLE table_name MODIFY COLUMN column_name INT NOT NULL AUTO_INCREMENT; ALTER TABLE table_name MODIFY column_name INT NOT NULL AUTO_INCREMENT; ALTER TABLE table_name CHANG

我在MySQL数据库中尝试自动增加ID列时遇到了一些困难。每个表的主键都已分配,所以现在我尝试使它们自动递增。我尝试了以下方法,但没有成功:

ALTER TABLE table_name MODIFY COLUMN column_name INT NOT NULL AUTO_INCREMENT;

ALTER TABLE table_name MODIFY column_name INT NOT NULL AUTO_INCREMENT;

ALTER TABLE table_name CHANGE column_name INT NOT NULL AUTO_INCREMENT;

ALTER TABLE database.table_name MODIFY column_name INT NOT NULL AUTO_INCREMENT;
我收到一条信息说:

0 row(s) affected Records: 0 Duplicates: 0 Warnings: 0
但是当我尝试使用
INSERT在表值中添加值时('value1','value2')
没有为主键列输入值(在value1列之前列出),MySQL会给我一个错误:

错误代码1136。列计数与第1行的值计数不匹配


我认为一旦设置了自动递增,就不必为自动递增列输入值。我做错了什么(

在INSERT语句中为自动递增列设置NULL。 或 将插入查询更改为:

INSERT INTO table (column1,column2) VALUES ('value1', 'value2');

对于insert语句,如果在“VALUES”之前未指定列然后mysql需要所有列的值。自动递增列允许NULL。mysql忽略NULL值并相应地设置自动递增值。

在INSERT语句中为自动递增列设置NULL。或者将INSERT查询更改为:INSERT INTO table(column1,column2)values('value1','value2');您的insert stmt column column count!=提供的列数。我甚至从未提供
自动增量列的名称。谢谢,穆罕默德!将
NULL
添加到
值中。耶!