RETURNING INTO 절을 이용한 디버깅
RETURNING INTO 절은 INSERT, UPDATE, DELETE 문장이 적용된 행의 컬럼 값을 변수에 저장하는 용도로 사용되는데, 값을 저장하는 변수로는 일반 변수나 컬렉션 변수를 사용할 수 있다. RETURNING INTO 절은 일반적(정적)인 DML문 뿐만 아니라 동적 쿼리로 작성된 DML문을 실행하는 EXECUTE IMMEDIATE에서도 사용할 수 있으며 BULK COLLCECT INTO 절과 함께 사용할 수도 있다.
선택한 데이터를 변수에 담는 “SELECT ~ INTO”처럼, RETURNING INTO 절은 INSERT, UPDATE, DELETE문이 실행되면서 삽입, 수정 혹은 삭제된 데이터를 변수에 담는 역할을 수행한다. INSERT, UPDATE, DELETE문이 반환하는, 즉 INSERT문에서는 새로 입력되는 로우, UPDATE는 갱신되는 로우, DELETE는 삭제되는 로우를 반환해 변수에 넣는다는 식으로 이해하면 RETURNING INTO 절의 쓰임새를 쉽게 이해할 수 있을 것이다. 그럼 몇 가지 사례를 통해 RETURNING INTO 절을 사용해서 데이터를 추적해 보자.