sql >> Databasteknik >  >> RDS >> Mysql

Infoga okänt antal rader i MySQL med PHP

Du kan infoga mer än en rad åt gången i MySQL:

INSERT INTO table1 (column1, column2, ...) VALUES (value_col1, value_col2), (value2_col1, value2_col2), ...;

I PHP kan du bygga din fråga genom att gå igenom rader och lägga till dem i SQL-strängen:

$sql = "INSERT INTO table1 (col1, col2) VALUES ";
foreach($rows as $i=>$row) {
    if ($i>0) {
        $sql .= sprintf(",(%s,%s)", $row["col1_value"], $row["col2_value"]);
    } else {
        $sql .= sprintf("(%s,%s)", $row["col1_value"], $row["col2_value"]);
    }
}
mysql_query($sql);

Du måste se till att undvika dina värderingar på rätt sätt beroende på vad du faktiskt infogar.



  1. Återgå till traditionell replikering från GTID

  2. komplexa sql-trädrader

  3. varchar(255) v tinyblob v tinytext

  4. Introduktion till SQL Server