首頁 >資料庫 >mysql教程 >使用 PDO 呼叫預存程序時如何解決'OUT 或 INOUT 參數...不是變數”錯誤?

使用 PDO 呼叫預存程序時如何解決'OUT 或 INOUT 參數...不是變數”錯誤?

Linda Hamilton
Linda Hamilton原創
2024-11-07 00:38:03262瀏覽

How to Resolve

使用PDO 呼叫帶有輸出參數的預存程序

此問題探討了在PHP 中嘗試使用PDO 呼叫帶有輸出參數的預存程序時遇到的問題。出現錯誤訊息「SQLSTATE[42000]:語法錯誤或存取衝突:例程 mydb.proc_OUT 的 1414 OUT 或 INOUT 參數 1 不是 BEFORE 觸發器中的變數或 NEW 偽變數」。

解決此問題問題,建議執行以下步驟:

  1. 使用單獨的查詢來擷取輸出參數:不要直接綁定輸出參數,而是執行另一個查詢來檢索輸出參數的值執行預存程序後的輸出參數。例如:
  1. 在儲存過程中插入“SELECT @someOutParameter”: 或者,在儲存過程中插入“SELECT @someOutParameter”,然後綁定使用準備好的語句將結果傳遞給輸出參數。例如:

透過實作這些解決方案,應該可以解決與預存程序中的輸出參數相關的錯誤。

以上是使用 PDO 呼叫預存程序時如何解決'OUT 或 INOUT 參數...不是變數”錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn