如何解决 MySQL 中“列数与值数不匹配”的错误?
无论何时向目标表中插入记录,如果列数与值数不匹配,就会发生这种类型的错误。为了进行演示,我们创建一个表格
mysql> create table errorDemo -> ( -> User_Id int NOT NULL AUTO_INCREMENT, -> User_Name varchar(20), -> PRIMARY KEY(User_Id) -> ); Query OK, 0 rows affected (0.47 sec)
错误如下
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);
使用插入命令向表中插入一些记录。
查询如下
mysql> insert into errorDemo(User_Name) values('John'); Query OK, 1 row affected (0.12 sec) mysql> insert into errorDemo(User_Name) values('Carol'); Query OK, 1 row affected (0.14 sec) mysql> insert into errorDemo(User_Name) values('Sam'); Query OK, 1 row affected (0.15 sec)
使用选择语句显示表中的所有记录。
查询如下
mysql> select *from errorDemo;
输出如下
+---------+-----------+ | User_Id | User_Name | +---------+-----------+ | 1 | John | | 2 | Carol | | 3 | Sam | +---------+-----------+ 3 rows in set (0.00 sec)
广告