2016-10-22 4 views
0

데이터베이스에서 대량의 데이터를 가져 오려고하지만 메모리가 출력되어 오류가납니다. 반환 된 데이터를 각각의 향신료로 나누려고합니다. 500 행만 있습니다. PDOPHP을 사용하여 재귀 함수를 작성하지만이 함수를 호출 할 때마다 마지막으로 가져온 ID을 가져와야합니다. 그래서 부탁 해요 그래서 어느 하나가 마지막으로 가져온-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를 얻을 수있는 방법이있다 사전

+1

왜 그 테이블의 이름이 모두 필요합니까? 당신은 그들과 무엇을 할 것입니까? –

+1

SQL LIMIT 및 OFFSET 절을 사용해보십시오. – Robert

+0

@ 일반적인 상식 실제 쿼리가 아닌 예일뿐입니다. –

답변

1

에서

덕분에이 코드에서 너무 많은 오류가있다, 그것은 하나 하나를 해결하는 것은 불가능하다. 여기에 필요한 코드 만 있습니다.

function getData(){ 
    return $db->query("SELECT colName FROM tableName")->fetchAll(PDO::FETCH_COLUMN); 
} 
관련 문제