修复错误1136:列计数与第1行的值计数不匹配?

如果缺少auto_increment列的值,则可能会得到该值。错误如下-

mysql> insert into DemoTable1353 values('Chris',23);
ERROR 1136 (21S01): Column count doesn't match value count at row 1

您需要提供auto_increment的值或将其保留为自动生成。

让我们看一个例子并创建一个表-

mysql> create table DemoTable1353
    -> (
    -> Id int NOT NULL AUTO_INCREMENT,
    -> Name varchar(20),
    -> Age int,
    -> PRIMARY KEY(Id)
    -> );

使用insert命令在表中插入一些记录。我们尚未插入自动增量值,它将自动生成-

mysql> insert into DemoTable1353(Name,Age) values('Chris',23);
mysql> insert into DemoTable1353(Name,Age) values('David',21);
mysql> insert into DemoTable1353(Name,Age) values('Bob',24);
mysql> insert into DemoTable1353(Name,Age) values('John',47);

使用select语句显示表中的所有记录-

mysql> select * from DemoTable1353;

这将产生以下输出-

+----+-------+------+
| Id | Name  | Age  |
+----+-------+------+
|  1 | Chris |   23 |
|  2 | David |   21 |
|  3 | Bob   |   24 |
|  4 | John  |   47 |
+----+-------+------+
4 rows in set (0.00 sec)