Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Einfügen eines einzelnen Datensatzes mehrmals mysql

Ja, das geht ganz einfach, es sollte ungefähr so ​​aussehen:

INSERT INTO MyTable VALUES ("John", 123, "US"), ("Carl", 123, "EU"), ("Jim", 123, "FR");

Es ist jedoch eine gute Programmierpraxis, die Spalten anzugeben Ihrer Tabelle in der Abfrage, zum Beispiel:

INSERT INTO MyTable (Column1, Column2, Column3) 
VALUES ("John", 123, "US"), ("Carl", 123, "EU"), ("Jim", 123, "FR");

BEARBEITEN:Sie können Ihre Abfrage so erstellen (in for Zyklus), die $total ist Ihre Benutzereingabe:

$sql = "INSERT INTO MyTable (Column1, Column2, Column3) VALUES";

//Build SQL INSERT query
for ($i = 1; $i <= $total; $i++) {
  $sql .= " ($value1, $value2, $value3), ";
}
//Trim the last comma (,)
$sql = rtrim($sql,",");
//Now, the $sql var contains the complex query. 
$result = mysql_query($sql);

Wie Sie sehen, tun wir das nicht Führen Sie INSERT aus Anweisung in der Schleife, sondern wir bauen den SQL-Abfragetext und dann Wir werden es in einem Durchgang ausführen.