TCL (Transaction Control Languege) 트랜잭션 제어 언어

김민석·2023년 8월 28일
0

Transaction이란?

  • 데이터베이스의 논리적 연산 단위
  • 데이터 변경 사항을 묶어 하나의 트랜잭션에 담아 처리함
  • 대상이 되는 데이터 변경 사항 : INSERT, UPDATE, DELETE (DML)
  • 데이터 변경 사항을 잠시 담아두는 바구니라고 생각하자
  1. COMMIT
  • 메모리 버퍼(트랜잭션)에 임시 저장된 데이터 변경 사항을 DB에 반영
  • COMMIT된 내용은 ROLLBACK으로 취소 불가
  1. ROLLBACK
  • 메모리 버퍼(트랜잭션)에 임시 저장된 데이터 변경 사항을 삭제하고 마지막 COMMIT 상태로 돌아감.
  1. SAVEPOINT
  • 메모리 버퍼(트랜잭션)에 저장 지점을 정의하여 ROLLBACK 수행 시 전체 작업을 삭제하는 것이 아닌 저장 지점까지만 일부 ROLLBACK
  • 사용법
SAVEPOINT 포인트명1;
    ...
SAVEPOINT 포인트명2;
    ...
ROLLBACK TO 포인트명1; -- 포인트1 지점 까지 데이터 변경사항 삭제

0개의 댓글