MySQL只插入第一行

时间:2012-10-27 18:33:10

标签: mysql

我正在尝试在我的MySQL数据库中插入大量的行。我有这样的查询,但其中有大约700多个重复条目但由于某种原因查询只是将第一行插入数据库。在这种情况下,它将是'374','4957','0'。

INSERT INTO table VALUES ('374','4957','0'),('374','3834','0'),('374','4958','0'),('374','5076','0'),('374','4921','0'),('374','3835','0'),('374','4922','0'),('374','3836','0'),('374','3837','0'),('374','4879','0'),('374','3838','0')

我无法弄清楚我做错了什么。

提前谢谢。

3 个答案:

答案 0 :(得分:4)

不是要表明显而易见的,但如果第一个字段'374'是您的主要关键字段,那么这就是问题所在。

否则,是否有从数据库收到的错误消息?这总是一个寻找错误的好地方。

答案 1 :(得分:1)

为了更好地理解为什么下次有些东西不起作用,请使用以下代码:

$sql = "INSERT INTO table VALUES ('374','4957','0'),('374','3834','0')";
if (!mysqli_query($link, $sql)) {
    printf("Errormessage: %s\n", mysqli_error($link));
}

这应显示从MySQL返回的错误消息。

更多信息:PHP manual - mysqli_error

答案 2 :(得分:0)

尝试在值之前写入列名。 例如: INSERT INTO表(column1,column2,column3)VALUES ...