錯誤:Python-MySQL 預存程序中的「指令不同步」
嘗試在名為的MySQL 儲存過程中執行多個語句時從Python 中,您可能會遇到「命令不同步;您現在無法執行此命令」錯誤。此問題通常在呼叫預存程序後執行第二條語句時出現。
解決方案
要解決此錯誤,需要在呼叫預存程序後關閉遊標程序並在執行後續語句之前開啟新程序。這會斷開遊標和預存程序之間的連接,使您能夠執行其他操作而不會發生衝突。
這是包含此解決方案的更新程式碼區塊:
cursor.callproc('my_mysql_procedure', [some_id,]) result = cursor.fetchall() for r in result: do something cursor.close() # Close the cursor after stored procedure execution cursor = connection.cursor() # Open a new cursor cursor.execute("select * from some_table") result = cursor.fetchall()
透過關閉遊標並在從儲存程序檢索結果後立即重新開啟它,您可以有效地重置遊標的狀態並啟用其他語句的執行,而不會觸發「命令不同步」錯誤。
以上是為什麼我的 Python MySQL 預存程序會拋出「命令不同步」錯誤,如何修復它?的詳細內容。更多資訊請關注PHP中文網其他相關文章!