最近在开发一个PHP程序时遇到了下面的错误:
PHP Fatal error: Allowed memory size of 9999999999 bytes exhausted
错误信息显示允许的最大内存已经耗尽。遇到这样的错误起初让我很诧异,但转眼一想,也不奇怪,因为我正在开发的这个程序是要用一个foreach
循环语句在一个有百万条记录的表里全表搜索具有特定特征的数据,也就是说,一次要把百万条数据取出,然后逐条检查每天数据。可想而知,百万条数据全部加载到内存中,内存不爆才怪。
缓冲的查询是默认的,下面的例子将演示如何执行无缓冲的查询每个API:
它们之间的区别:
无缓冲的MySQL查询执行查询,然后返回一个资源时,