⑥ 결과 패치
문장을 실행했으므로 결과 집합을 패치해야 하는데 이때 FETCH_ROWS 함수를 호출한다.
DBMS_SQL.FETCH_ROWS (
c IN INTEGER)
RETURN INTEGER;
• c: 파싱할 문장의 커서 ID 파싱할 문장의 커서 ID
• 반환 값: 전체 결과 로우 수가 아니라 실제로 패치된 로우 수
FETCH_ROWS의 반환 값은 패치할 값이 있으면 1, 패치할 로우가 없을 때는 0을 반환한다. EXECUTE 함수가 전체 결과 로우 수를 반환하는 반면, FETCH_ROWS 함수는 0이나 1을 반환하는 것이다. 따라서 결과 값을 패치하는 경우, 루프를 돌며 FETCH_ROWS 함수를 호출하면서 반환 값이 0일 때 루프를 빠져 나오도록 코드를 작성해야 한다.