2012-04-14 61 views
0

mySQLi bind_param方法拋出一個錯誤「命令不同步」。我猜測這是從一個沒有被正確關閉的補充說明。有沒有辦法通過連接查看未公開的準備好的聲明,還是應該開始挖掘?PHP MySQLi查找未完成準備語句

回答

1

看一看這一個:

C.5.2.14。命令不同步如果您獲得命令不同步;你的 現在不能在你的客戶端代碼中運行這個命令,你以錯誤的順序調用客戶端 函數。

發生這種情況,例如,如果您使用了mysql_use_result()和 嘗試執行新的查詢你已經調用了mysql_free_result()之前。 如果您嘗試執行兩個查詢而不返回調用mysql_use_result()或mysql_store_result()之間的數據 ,也會發生這種情況。

參考:http://dev.mysql.com/doc/refman/5.0/en/commands-out-of-sync.html

+0

我發現,導致衝突的代碼,但還是不太明白爲什麼。用一個fetch_all方法來調用一個mysql存儲過程來調用一個關聯數組很簡單。我不知道爲什麼這會導致bind_param函數無法工作。 bind_param函數在會話處理程序中使用?存儲過程是否可能鎖定連接? – christian 2012-04-14 01:41:41