1615 准备好的语句需要在codeigniter中重新准备

Posted

技术标签:

【中文标题】1615 准备好的语句需要在codeigniter中重新准备【英文标题】:1615 Prepared statement needs to be re-prepared in codeigniter 【发布时间】:2018-12-14 22:09:41 【问题描述】:

我在 codeIgniter 3.1.7framework 的 mysql 存储过程中使用了 prepare 语句。当我在 localhost 中工作时一切正常但是当网站托管时,我收到此错误“需要重新准备准备好的语句”我在太多网站中检查了解决方案并检查了 codeigniter , mysql 文档。但我仍然无法解决它。几乎每个人都提到在sql中增加“table_definition_cache”。但我试过了,但我仍然得到同样的错误。期待专家的一些解决方案。提前致谢。

【问题讨论】:

我没有得到解决方案,但有人否决了我的问题,请告诉我原因。 CI 3.1.7 是否使用 PDO?如果是,您可以尝试模拟准备好的语句PDO::ATTR_EMULATE_PREPARES => true 我觉得是的...让我检查一下 @DenisAlimov 我将数据库连接从 mysqli 更改为 pdo.. 但结果仍然相同。在本地主机中一切正常,托管后我收到此错误 【参考方案1】:

我在使用 Laravel 框架时遇到了同样的问题。我用谷歌搜索并尝试了许多解决方案,但并没有解决这个问题。 最后,我得到了这个解决方案并摆脱了这个问题。

解决方案:MySQL: Prepared statement needs to be re-prepared

您还可以查看以下解决方案:

Solution1:

Solution2:

我希望这也对你有用。

【讨论】:

【参考方案2】:

增加变量table_definition_cache

的值

可以按照SET GLOBAL table_definition_cache=value;

这句话增加

my.conf 文件中修改

【讨论】:

以上是关于1615 准备好的语句需要在codeigniter中重新准备的主要内容,如果未能解决你的问题,请参考以下文章