2016-10-22 89 views
0

我想從我的數據庫中獲取大量數據,但我得到了內存出錯錯誤,所以我試圖將我返回的數據分成每個香料只有500行。我通過使用PDOPHP使用遞歸函數來做到這一點,但我需要獲取最後一次提取的ID爲,每次我調用該函數。所以我問的是有沒有辦法讓使用PDO功能會是這樣有沒有什麼辦法可以使用PDO獲取上次提取的ID

$names = array(); 
function getData(&names){ 
    $db->query("SELECT id, colName FROM tableName WHERE id between last-fetched-id AND last-fetched-id + 500"); 
    $get = $db->fetchAll(); 
    if(!empty($get)){ 
     foreach($get AS $row){ 
     array_push($names,$row['colName']); 
     } 
     getData(); 
    } 
} 

所以可以在任何一個請告訴我如何得到最後牽強-ID的上次讀取ID

在此先感謝

+1

爲什麼你需要他表中的所有名字?你打算怎麼處理他們? –

+1

試試SQL LIMIT和OFFSET子句? – Robert

+0

@你的常識這只是一個例子而不是真正的查詢 –

回答

1

有在你的代碼的錯誤太多,這是不可能解決一個接一個。所以這裏只是你需要的代碼。

function getData(){ 
    return $db->query("SELECT colName FROM tableName")->fetchAll(PDO::FETCH_COLUMN); 
} 
相關問題