为了提高安全性,我实现了一个执行预准备语句的函数。当使用PHP准备好的语句和mysqli时,缓慢检索blob字段
但是当我尝试获取base64编码的blob内容(大约30-50KB)时,我遇到了问题。
如果我不使用预处理语句运行查询,它会很快运行。
通过准备好的声明,它在拨打电话时停止播放:mysqli_stmt_fetch($statement)
并且需要将近一分钟或更长时间才能运行,最终返回结果。
只要我摆脱mysqli_stmt_fetch($statement)
调用或从我的select查询中排除blob字段,事情就像往常一样快速运行。
我希望有人知道这里发生了什么。到目前为止,我已经挖掘了互联网寻找答案,但运气不大。
听起来像司机给我的错误。但首先是什么?也许你也可以提供两个不同查询的完整代码($ statement)。 – baloo 2013-03-22 21:25:07
该应用使用api调用,该调用返回没有模式的数据。无模式数据填充到一个blob中。 – 2013-03-22 21:35:42