我正在發佈一個使用CodeIgniter的SQL查詢,它可以返回80,000行以上的結果。每行有三列,所有這些都是整數,我得到一個PHP錯誤: 致命錯誤:允許的內存大小134217728字節用盡大型SQL結果集佔用太多內存 - CodeIgniter
看來,我試圖使用超過128MB來檢索結果MySQL服務器。我正在使用$ query-> result_array()來檢索結果。在我得到的結果中,空間顯然會產生嚴重的開銷。假設我檢索100,000行,有3個整數。所以,10萬*((3 * 4 + 10)= 2.1MB。(10個是用於柱身份證等)。
字節難道我做錯了什麼數?
------ ----------------解決-----------------------
通過修改CodeIgniter代碼解決: link。
執行現在更快,腳本只服用內存〜3MB 128MB,而不是向上的。
檢索塊,進程;檢索下一個塊... – 2012-01-10 23:08:23
採取Dagon的建議不要一次採集所有數據。 – 2012-01-10 23:11:43
@Dagon可以向我們展示一些關於如何在大型查詢中完成「檢索塊,進程,檢索下一個塊」的示例? – fujisan 2014-02-21 09:19:43