PHP 程式碼與MySQL 查詢中的「指令不同步」錯誤
使用mysqli 執行涉及多個MySQL 查詢的PHPMy 腳本時,可能會出現錯誤:「命令不同步;您現在無法執行此命令。」當在取得和處理前一個查詢的結果或清除MySQL伺服器的查詢命令快取之前嘗試後續查詢時,就會出現此問題。
問題中提供的程式碼執行兩個查詢:一個用於計算記錄,另一個用於計算記錄。根據搜尋字串檢索行。但是,在取得第一個查詢的結果之前,會執行第二個查詢。這會觸發“不同步”錯誤。
錯誤原因
可能的解決方案
示例
下面是使用$stmt->store_result()緩衝第一個查詢結果的範例:
<?php $con = mysqli_connect("localhost", "user", "password", "db"); $brand ="o"; $countQuery = "SELECT ARTICLE_NO FROM AUCTIONS WHERE upper(ARTICLE_NAME) LIKE % ? %"; $con->query("SET NAMES 'utf8'"); if ($numRecords = $con->prepare($countQuery)) { $numRecords->bind_param("s", $brand); $numRecords->execute(); $numRecords->store_result(); // Buffer the results $data = $con->query($countQuery) or die(print_r($con->error)); $rowcount = $data->num_rows; }
以上是為什麼在 PHP 和 MySQL 查詢中出現「指令不同步」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!