PDOStatement::nextRowset

(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.2.0)

PDOStatement::nextRowset — 다중 행 집합 명령문 핸들에서 다음 행 집합으로 진행합니다.


설명

public PDOStatement::nextRowset(): bool

일부 데이터베이스 서버는 둘 이상의 행 집합(결과 집합이라고도 함)을 반환하는 저장 프로시저를 지원합니다. PDOStatement::nextRowset()을 사용하면 PDOStatement 개체와 연결된 두 번째 및 후속 행 집합에 액세스할 수 있습니다. 각 행 집합에는 이전 행 집합과 다른 열 집합이 있을 수 있습니다.


매개변수

이 함수에는 매개변수가 없습니다.


반환 값

성공하면 true를, 실패하면 false를 반환합니다.


Examples

예제 #1 저장 프로시저에서 반환된 여러 행 집합 가져오기

다음 예에서는 세 개의 행 집합을 반환하는 저장 프로시저 MULTIPLE_ROWSETS를 호출하는 방법을 보여 줍니다. do-while 루프를 사용하여 PDOStatement::nextRowset() 메서드가 false를 반환할 때까지 호출하고 더 이상 행 집합을 사용할 수 없을 때 루프를 종료합니다.

                  
<?php
$sql = 'CALL multiple_rowsets()';
$stmt = $conn->query($sql);
$i = 1;
do {
    $rowset = $stmt->fetchAll(PDO::FETCH_NUM);
    if ($rowset) {
        printResultSet($rowset, $i);
    }
    $i++;
} while ($stmt->nextRowset());

function printResultSet(&$rowset, $i) {
    print "Result set $i:\n";
    foreach ($rowset as $row) {
        foreach ($row as $col) {
            print $col . "\t";
        }
        print "\n";
    }
    print "\n";
}
?>
                  
                

위의 예는 다음을 출력합니다.

Result set 1:
apple    red
banana   yellow

Result set 2:
orange   orange    150
banana   yellow    175

Result set 3:
lime     green
apple    red
banana   yellow
                

기타