首页 >数据库 >mysql教程 >如何在 PHP 中执行多个 MySQL 查询?

如何在 PHP 中执行多个 MySQL 查询?

Barbara Streisand
Barbara Streisand原创
2024-12-08 19:20:12588浏览

How Can I Execute Multiple MySQL Queries in PHP?

在 PHP 中组合多个 MySQL 查询

在 PHP/MySQL 中,不可能将多个查询作为单行代码执行常规 mysql API。然而,还有其他方法可以达到相同的结果。

使用 MySQLi 的 mysqli_multi_query 函数

MySQLi 提供了一个名为 mysqli_multi_query 的函数,允许您一次性执行多个查询。语法:

mysqli_multi_query(mysqli $link, string $query);
  • $link:有效的 MySQLi 连接资源。
  • $query:包含要执行的所有查询的字符串。用分号 (;) 分隔每个查询。

例如:

$mysqli = new mysqli('localhost', 'username', 'password', 'database_name');

$query = "SELECT SQL_CALC_FOUND_ROWS Id, Name FROM my_table WHERE Name LIKE '%prashant%' LIMIT 0, 10;" . "SELECT FOUND_ROWS();";

$mysqli->multi_query($query);

// Handle each result set separately
if ($mysqli->more_results()) {
    do {
        $result = $mysqli->store_result();
        // Process the current result set
        while($row = $result->fetch_array()) {
            // Do something with the row
        }
        $result->free();
    } while ($mysqli->more_results() && $mysqli->next_result());
}

注意: mysql_query 和 mysql API 中其他函数的使用已弃用,应避免使用 MySQLi 或 PDO(PHP 数据

其他方法

  • 执行两个单独的查询:虽然效率不高,但您可以简单地执行两个查询又一个。第二个查询将执行得非常快,因此性能差异通常可以忽略不计。
  • 使用数据库抽象层 (DAL): DAL 是一个软件库,为与不同的数据库交互。某些 DAL(例如 Doctrine)允许您将多个查询作为单个事务执行。

以上是如何在 PHP 中执行多个 MySQL 查询?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn