首页 > 后端开发 > php教程 > 为什么我不能在 MySQL 中同时运行两个'mysqli_query()”调用?

为什么我不能在 MySQL 中同时运行两个'mysqli_query()”调用?

Patricia Arquette
发布: 2024-12-07 01:50:11
原创
547 人浏览过

Why Can't I Run Two `mysqli_query()` Calls Simultaneously in MySQL?

为什么两个 mysqli 查询不能同时运行?

在 MySQL 中,在一次调用中执行多个查询需要使用 mysqli_multi_query ()。尝试使用 mysqli_query() 执行两个查询将导致第二个查询失败。

解决方案:mysqli_multi_query()

要解决此问题,请使用正确的方法是 mysqli_multi_query()。它接受一串以分号分隔的查询作为输入。

示例:

$mysqli = new mysqli($host, $user, $password, $database);

// Queries to be executed
$query = "INSERT INTO images (project_id, user_id, image_name, ...) VALUES (...);";
$query .= "INSERT INTO images_history (project_id, user_id, image_name, ...) VALUES (...);";

// Execute queries using mysqli_multi_query()
$result = mysqli_multi_query($mysqli, $query);

// Handle results
if ($result) {
    // Process results using mysqli_store_result() and mysqli_next_result()
} else {
    // Handle error (if any)
}
登录后复制

注意:

  • 出于安全原因(SQL注入),mysqli_query()不会执行多个查询预防)。
  • mysqli_store_result() 必须在 mysqli_multi_query() 之后使用来检索结果集。
  • 应该检查 mysqli_error() 以确保 INSERT 查询成功(即使他们没有结果集)。

以上是为什么我不能在 MySQL 中同时运行两个'mysqli_query()”调用?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板