FORALL문
BULK COLLECT절이 선택된 데이터를 컬렉션 변수에 넣는 식으로 일괄처리를 하는 반면, FORALL문은 INSERT, UPDATE, DELETE, MERGE와 같은 DML문과 함께 사용되어 일괄처리를 할 수 있다. 예제를 통해 어떤 식으로 동작하는지 알아 보자.
먼저 emp_bulk 테이블에 있는 bulk_id 컬럼 값을 살펴 보자. 이전 절에서 emp_bulk 테이블에 데이터를 생성할 때 총 10,000번의 루프를 돌리면서 사원 테이블의 데이터를 복사해 넣었는데, 이때 bulk_id 컬럼 값은 FOR문의 인덱스 값인 i를 집어 넣었다. 즉 bulk_id 값은 1부터 10,000까지 들어가 있다.
입력
SELECT MIN(bulk_id), MAX(bulk_id), COUNT(*)
FROM emp_bulk;
결과