MySQL:指令不同步錯誤
問題:
使用者遇到「指令使用順序執行多個MySQL查詢時出現不同步;您現在無法執行此指令」錯誤mysqli.
原因:
出現此錯誤是因為mysqli 預設對準備好的語句使用無緩衝查詢。這意味著在執行下一個查詢之前必須檢索第一個查詢的結果。
解:
有兩種方法可以解決此問題:
方法一:將結果取入數組
取將第一個查詢的結果放入陣列中並循環遍歷它。此方法涉及以下步驟:
方法二:緩衝查詢
設定mysqli緩衝使用 mysqli_stmt_store_result() 的查詢。此方法涉及以下步驟:
實現:
例如,在您提供的程式碼中實作方法2:
... $countQuery = "SELECT ARTICLE_NO FROM AUCTIONS WHERE upper(ARTICLE_NAME) LIKE % ? %"; if ($numRecords = $con->prepare($countQuery)) { $numRecords->bind_param("s", $brand); $numRecords->execute(); $numRecords->store_result(); // Buffer the results ... } ...
其他備註:
以上是MySQL「指令不同步」錯誤:如何解決 mysqli 的順序查詢問題?的詳細內容。更多資訊請關注PHP中文網其他相關文章!