TCL(Transaction Control Language)
트랜잭션을 제어하는 명령어
1. ROLLBACK
- 보류중인 모든 데이터 변경사항을 폐기.
- 현재 트랜잭션 종료
- 직전 commit 직후 단계로 회귀
2. COMMIT
- 보류중인 모든 데이터 변경사항을 영구적으로 적용.
- 현재 트랜잭션 종료
3. SAVEPOINT
단계별 특징
1. COMMIT전/ROLLBACK전
- 이전 데이터 상태 복구(ROLLBACK)가능
- 현재 사용자 : SELECT - FROM으로 DML 작업 결과 확인 가능
- 다른 사용자 : COMMIT 전 DML 작업결과 확인 불가
- 행 잠금 : 다른 사용자가 영향을 받는 행의 데이터 변경 불가
2. COMMIT 후
- 보류 중인 변경사항들을 확정, 영구적용 → DB에 저장
- 이전 데이터 상태 겹쳐씀
- 모든 사용자가 DML 결과 확인 가능
- 관련있는 행 잠금 해제 → 다른 사용자의 접근/편집 가능
- SAVEPOINT가 지워짐