1

150,000 件のレコードを含むデータベースがありますが、それほど多くはありません。私が抱えている問題は、ファイラーなしで検索を実行すると (150k レコードすべてを返す)、「結果セットを保存できません」というメッセージが表示されることですが、結果を半分にカットするフィルターを追加すると正常に動作します。また、phpmyadminで実行すると正常に動作します。

ブラウザでSQLを実行すると、このエラーが発生します。グーグルで調べたところ、ブラウザのメモリに問題があり、それほど多くの結果を返すことができない可能性があることがわかりました。

誰かが私にこれを説明し、さらに重要なことに、エラーなしですべての 150k レコードを返すことができるように解決策を提供してもらえますか?

ありがとうございました。

4

3 に答える 3

1

結果セットがメモリ不足を引き起こすほど大きい場合は、バッファリングされていないクエリを使用してください http://php.net/manual/en/mysqlinfo.concepts.buffering.php

于 2012-08-20T14:59:17.647 に答える
0

PHPスクリプトのメモリ制限を増やすようにしてください。

入れてみてください:

ini_set('memory_limit', '128M');

スクリプトの最初に。

参照:

http://php.net/manual/en/function.ini-set.php

http://php.net/manual/en/ini.core.php

于 2012-08-20T14:52:47.560 に答える
0

破損した MySQL テーブルが原因でこの警告が発生する場合があります。結果セットを処理するのに十分なメモリがあると思われる場合は、テーブルを確認してください。

于 2015-06-09T21:49:38.530 に答える