【发布时间】:2017-01-03 07:40:53
【问题描述】:
当我尝试将具有另一个字符串值的数组插入数据库时,它会给出列计数与值计数不匹配的错误。我的代码在下面给出了为什么会发生此错误的任何解释
$Skills = "java,php";
$memberId ="1";
$wordArray = explode(",", $Skills);
$query = "INSERT INTO tempskill (skill,memberId) VALUES ('" .implode("'), ('", $wordArray). "' , '".$memberId."' ) ";
echo $Skills;
mysql_query($query) or die ('Error :' . mysql_error());
此代码输出是 - java,C#Error :Column count doesn't match value count at row 1
【问题讨论】:
-
通过在 $query 上添加回显来打印您的查询并在 mysql 终端上运行查询并检查错误
-
感谢您的回复,当我回显查询时它给出了这个 - INSERT INTO tempskill (skill,memberId) VALUES ('abc'), ('def', '1') Error :Column count does' t 匹配第 1 行的值计数
-
abc的成员 ID 未设置。你看到了吗? -
是的,当使用这样的 SQL 时,它可以工作 INSERT INTO tempskill (skill,memberId) VALUES ('abc' , '1' ), ('def', '1') 但问题是如何像这样通过爆炸