1

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')

何が間違っているのか理解できません。

前もって感謝します。

4

3 に答える 3

4

明白なことを述べるつもりはありませんが、最初のフィールド「374」が主キーフィールドである場合、これが問題です。

それ以外の場合、データベースから受信したエラーメッセージはありますか?それは常にバグを探すのに良い場所です。

于 2012-10-27T18:35:55.370 に答える
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マニュアル-mysqli_error

于 2012-10-27T18:55:15.307 に答える
0

値の前に列名を書き込んでみてください。例:INSERT INTO table(column1、column2、column3)VALUES..。

于 2012-10-27T18:36:05.177 に答える