首頁 > 後端開發 > php教程 > 為什麼我不能在 MySQL 中同時執行兩個「mysqli_query()」呼叫?

為什麼我不能在 MySQL 中同時執行兩個「mysqli_query()」呼叫?

Patricia Arquette
發布: 2024-12-07 01:50:11
原創
550 人瀏覽過

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注入),mysql_query ()不會執行多個查詢預防)。
  • mysqli_store_result() 必須在 mysqli_multi_query() 之後使用來檢索結果集。
  • 應該檢查 mysqli_error() 以確保 INSERT 查詢成功(即使他們沒有結果集)。

以上是為什麼我不能在 MySQL 中同時執行兩個「mysqli_query()」呼叫?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板