每当在目标表中插入记录时,列数不匹配时,就会发生这种类型的错误。对于演示示例,让我们创建一个表mysql> create table errorDemo
-> (
-> User_Id int NOT NULL AUTO_INCREMENT,
-> User_Name varchar(20),
-> PRIMARY KEY(User_Id)
-> );
错误如下mysql> insert into errorDemo values('John');
ERROR 1136 (21S01): Column count doesn't match value count at row 1
为避免此类错误,您需要使用以下语法insert into yourTableName(yourColumnName1,yourColumnName2,...N)values(yourValue1,yourValue2,....N);
使用insert命令在表中插入一些记录。
查询如下mysql> insert into errorDemo(User_Name) values('John');
mysql> insert into errorDemo(User_Name) values('Carol');
mysql> insert into errorDemo(User_Name) values('Sam');
使用select语句显示表中的所有记录。
查询如下mysql> select *from errorDemo;
以下是输出+---------+-----------+
| User_Id | User_Name |
+---------+-----------+
| 1 | John |
| 2 | Carol |
| 3 | Sam |
+---------+-----------+
3 rows in set (0.00 sec)