同時進行兩個 mysqli 查詢?
嘗試執行多個 MySQL 查詢時,為什麼第二個查詢會失敗?
mysqli_multi_query()解決方案
要解決此問題,請考慮使用 mysqli_multi_query() 函數。此函數允許您在單一 mysqli 呼叫中執行多個查詢。
範例實作
先制定包含查詢的字串,用分號 (; 分隔每個查詢)。 ).
$query = "INSERT INTO images (project_id, user_id, image_name, date_created, link_to_file, link_to_thumbnail, given_name) VALUES ('$project_id', '$user_id', '$image_name', '$date_created', '$link_to_file', '$thumbnail', '$ImageName');"; $query .= "INSERT INTO images_history (project_id, user_id, image_name, date_created, link_to_file, link_to_thumbnail, given_name, day, month, year) VALUES ('$project_id', '$user_id', '$image_name', '$date_created', '$link_to_file', '$thumbnail', '$ImageName', '$day', '$month', '$year');";
隨後,使用以下命令執行多查詢mysqli_multi_query():
$result = mysqli_multi_query($mysqli, $query);
處理執行結果
處理執行結果執行結果捕獲在$result 變數中。如果第一個查詢失敗,$result 將為 false。
後續步驟和注意事項此外,請注意,對於沒有結果集的查詢,mysqli_store_result() 將傳回 false (例如 INSERT 查詢)。因此,請確保使用 mysqli_error() 透過檢查空結果來驗證 INSERT 是否成功。 請參閱提供的文件以取得有關 mysqli_multi_query()、mysqli_more_results()、mysqli_next_result() 和 mysqli_store_result() 的更多資訊。功能。以上是為什麼我的第二個 MySQL 查詢失敗,「mysqli_multi_query()」如何提供協助?的詳細內容。更多資訊請關注PHP中文網其他相關文章!