我已經重寫我的網站的PHP代碼,增加了MySQL的存儲過程。如何擺脫MySQL錯誤的「準備語句需要重新編寫」
在我的本地版本,一切工作正常,但我上傳我的網站託管服務器,我constatly越來越致命錯誤後「預處理語句需要重新準備」。
有時候頁面加載,加載有時會失敗,我看到這個錯誤。那是什麼?
更新:移動到VPS服務器後,問題已消失。感謝幫助。
我已經重寫我的網站的PHP代碼,增加了MySQL的存儲過程。如何擺脫MySQL錯誤的「準備語句需要重新編寫」
在我的本地版本,一切工作正常,但我上傳我的網站託管服務器,我constatly越來越致命錯誤後「預處理語句需要重新準備」。
有時候頁面加載,加載有時會失敗,我看到這個錯誤。那是什麼?
更新:移動到VPS服務器後,問題已消失。感謝幫助。
非常感謝!我會嘗試詢問我的託管服務提供商。但它看起來像唯一的辦法,我現在就是爲什麼你需要大膽和大字體租用VPS或專用服務器是昂貴:( – oyatek 2010-12-07 20:41:26
我的解決方案是創建一個程序是這樣的:
DELIMITER $$
--
-- Procedimientos
--
DROP PROCEDURE IF EXISTS `dch_content_class_content`$$
CREATE DEFINER=`renuecod`@`localhost` PROCEDURE `dch_content_class_content`(IN $classId INTEGER)
BEGIN
-- vw_content_class_contents is a VIEW (UNIONS)
select * from vw_content_class_contents;
END$$
我希望幫助別人
我是在一個共享的主機環境得到在Ruby中同樣的錯誤on Rails的。它可能不是最安全的解決方案,但禁用準備好的語句爲我擺脫了錯誤信息。
這可以通過添加完成「prepared_statements:假」設置爲您database.yml文件:
production:
prepared_statements: false
這似乎是一個合理的解決方案,當你沒有了對配置設置控制MySQL服務器。
你應該發佈一些代碼。 – jwueller 2010-12-07 19:41:14
下面的答案沒有達到問題的核心。在更多的答案[此重複](https://stackoverflow.com/questions/29480915/mysql-view-prepared-statement-and-prepared-statement-needs-to-be-re-prepar)。 – reinierpost 2017-06-06 15:18:34