DB - TCL

BroJang·2022년 9월 16일
1

DB

목록 보기
13/14

TCL (Transaction Control Language)

-> 트랜잭션 제어 언어

-> COMMIT, ROLLBACK 2가지 존재



트랜잭션
-> 한꺼번에 수행되어야 할 최소의 작업 단위
- 논리적 작업 단위

-> 하나의 트랜잭션으로 이루어진 작업들은 반드시 한번에 완료가 되어야 하며, 그렇지 않은 경우에는 한 번에 취소가 된다.



트랜잭션 SQL

COMMIT : 트랜잭션 작업이 정상 완료되면 변경 내용을 영구히 저장 (모든 savepoint 삭제)

SAVEPOINT <savepoint명> : 현재 트랜잭션 작업 지점에 이름을 지정

  • 하나의 트랜잭션 안에서 구역을 나눌 수 있다.

ROLLBACK : 트랜잭션 작업을 모두 취소하고 최근 commit 지점으로 이동

ROLLBACK TO <savepoint명> : 트랜잭션 작업을 취소하고 savepoint 지점으로 이동



savepoint 만드는 방법

-> SAVEPOINT 세이브포인트명
ex) SAVEPOINT SP1;

-> SAVEPOINT는 COMMIT 하는 시점에 사라진다.



SAVEPOINT 지점 롤백 방법

  1. 기본적인 롤백 : ROLLBACK (마지막 COMMIT 지점으로 이동)

  2. SAVEPOINT 롤백 : ROLLBACK TO 세이브포인트명 (해당 세이브 포인트 지점으로 이동)
    ex) ROLLBACK TO SP1;

profile
끊임없이 배우고 진보하는 백엔드 개발자입니다. 배움에 있어서 최선을 다하자!

0개의 댓글