2011. 9. 2. 11:12

[Oracle] SAVEPOINT & TRANSACTION

* SAVEPOINT

트랜잭션을 작은 섹션으로 나누는 SAVEPOINT 문을 사용하여 현재 트랜잭션에서 표시자를 생성할 수 있습니다.

그런 다음 ROLLBACK TO SAVEPOINT 문을 사용하여 해당 표시자에 보류 중인 변경 사항을 폐기할 수 있습니다.

이전의 저장점과 동일한 이름으로 두번째 저장점을 만들면 이전의 저장점이 삭제됩니다. 

 UPDATE...
 SAVEPOINT UPDATE_DONE;
 INSERT...
 ROLLBACK TO UPDATE_DONE;


* SET TRANSACTION READ ONLY - 읽기 일관성

이 구문을 실행하면 9시에 실행했다면, 9시 시점에서 커밋된 내용만 보여준다.

중간에 UPDATE 등 데이터 수정이 있어도 9시 시점의 데이터를 보여준다. 

명령 실행 후 READ 만 가능하다. 수정/삭제작업은 불가하다.

작업 해제는 ROLLBACK을 이용하면 된다.


'Database / Sql' 카테고리의 다른 글

[Oracle] PL/SQL PROCEDURE Sample  (0) 2011.11.14
[Oracle] PL/SQL FUNCTION Sample  (0) 2011.11.14
[Oracle] FLASHBACK  (0) 2011.09.02
[Oracle] BIN$... 으로 시작하는 테이블  (0) 2011.08.31
문자열 결합 그룹핑  (0) 2011.08.30