PDO MySQL:在一个查询中插入多行
使用 PDO 将多行插入 MySQL 数据库可以通过仔细构造单个查询来实现询问。使用占位符准备查询,然后在数据数组中循环绑定值的常见方法不适用于多次插入。
为了克服此限制,我们可以创建一个包含所有必要值和占位符的长查询。下面是一个示例:
$query = "INSERT INTO $table (key1, key2, key3, etc) VALUES (:key1, :key2, :key3, etc), (:key1, :key2, :key3, etc), (:key1, :key2, :key3, etc)"; $dbh = new PDO(...); $stmt = $dbh->prepare($query); $i = 1; $data = [[], ...]; // Assuming $data contains the rows to be inserted foreach($data as $row) { foreach ($row as $key => $value) { $stmt->bindValue($i++, $value); } } $stmt->execute();
在此示例中,$data 数组包含每行的值。我们循环遍历数组并将每个值绑定到具有特定索引的占位符。这可确保值正确排序并插入到数据库中。
通过准备单个查询并以这种方式绑定值,我们可以使用 PDO 高效地将多行插入到 MySQL 表中。
以上是如何在单个查询中使用 PDO 将多行插入 MySQL 数据库?的详细内容。更多信息请关注PHP中文网其他相关文章!