mysqli 可以在一條語句中準備多個查詢嗎?
在 mysqli 中,準備好的語句旨在執行單一 MySQL 查詢。雖然不可能在單一語句中準備多個查詢,但您可以在不同的變數中建立多個準備好的語句。
為此,請使用以下方法:
$stmtUser = $sql->prepare("INSERT INTO user (id_user, username, pw, email) VALUES (?,?,?,?)"); $stmtProc = $sql->prepare("INSERT INTO process (id_user, idp) VALUES (?,?);");
您可以然後獨立執行這些語句。例如:
$stmtUser->bind_param("ssss", $id, $username, $pw, $email); $stmtUser->execute(); $stmtProc->bind_param("ss", $id, $idp); $stmtProc->execute();
如果您需要同時嚴格執行兩個查詢,則應考慮使用事務。事務確保兩個查詢要么成功,要么都失敗。
最後,請記住,「呼叫非物件上的成員函數」錯誤通常表示在prepare()語句中失敗,需要您檢查它錯誤。
以上是MySQLi 準備好的語句可以同時處理多個查詢嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!