SQL 기본 및 활용

27. TCL — SQLD, COMMIT·ROLLBACK·SAVEPOINT와 DDL 자동 커밋 함정

CBT 전자문제집 편집팀
#SQLD#TCL#COMMIT#ROLLBACK#SAVEPOINT

TCL(Transaction Control Language) 은 트랜잭션(하나로 묶인 작업 단위)을 확정(COMMIT) 하거나 취소(ROLLBACK) 하고, 중간 저장점(SAVEPOINT) 으로 부분 취소하는 명령입니다. 시험은 "이 시점에 ROLLBACK하면 무엇이 남는가"를 묻습니다. (트랜잭션·ACID 개념은 트랜잭션 단원 참고.)

이 단원, 시험에서 어디에 나오나 (출제 비중)

  • 제2과목 「SQL 기본 및 활용」 = 40문항 · 80점. TCL은 트랜잭션 결과 판별 유형으로 출제됩니다.
  • ROLLBACK TO의 취소 범위DDL 자동 커밋이 오답을 가르는 포인트입니다. (단원별 문항수는 공개되지 않습니다 — 출처: KDATA 출제기준.)

출제 포인트 — 시험이 실제로 묻는 것

  1. COMMIT(확정) · ROLLBACK(전체 취소) · SAVEPOINT + ROLLBACK TO(부분 취소)
  2. ROLLBACK TO 저장점 = 그 지점 "이후"만 취소 — 저장점과 그 이전은 유지
  3. COMMIT 후에는 되돌릴 수 없다 (지속성)
  4. 트랜잭션 도중 DDL 실행 = 앞선 DML까지 자동 커밋 (최다 함정)

① 네 명령의 동작

명령동작
COMMIT지금까지 변경을 영구 확정
ROLLBACK마지막 COMMIT 이후 전부 취소
SAVEPOINT 이름중간 저장점 설정
ROLLBACK TO 이름그 저장점 이후만 취소

DML 변경은 COMMIT 전까지 다른 세션에서 보이지 않습니다(격리성). COMMIT해야 모두에게 확정됩니다.

② SAVEPOINT — 되감기의 범위 계산

작업 A, 저장점 s1, 작업 B, 저장점 s2, 작업 C 순서로 진행했을 때 ROLLBACK TO s2는 C만 취소하고 ROLLBACK TO s1은 B와 C를 취소하며 COMMIT은 전부 확정하는 범위 도식

그림 1. ROLLBACK TO는 저장점 이후만 취소한다. (자작 도식)

INSERT INTO 계좌 ...;    -- 작업 A
SAVEPOINT s1;
UPDATE 계좌 SET ...;     -- 작업 B
SAVEPOINT s2;
DELETE FROM 계좌 ...;    -- 작업 C
ROLLBACK TO s1;         -- B, C 취소 — A는 남는다
COMMIT;                 -- A만 확정

판별법: ROLLBACK TO s1s1 이후만 되감습니다. "s1 이전까지 다 취소"로 읽으면 반대로 틀립니다. 전체 취소는 그냥 ROLLBACK.

③ COMMIT 후 복구 불가 — 지속성

ROLLBACK이 되돌리는 범위는 마지막 COMMIT 이후뿐입니다. 이미 COMMIT된 변경은 영구 확정(지속성)이라 "실수로 COMMIT → ROLLBACK으로 복구"는 불가능합니다.

④ DDL 자동 커밋 — 앞선 DML까지 확정된다

DELETE FROM 주문;        -- DML (아직 취소 가능)
CREATE INDEX idx ON ...;  -- DDL → 자동 커밋! DELETE까지 확정
ROLLBACK;                 -- 아무것도 안 돌아온다

트랜잭션 도중 CREATE·ALTER·DROP·TRUNCATE 같은 DDL을 실행하면 그 앞의 DML까지 자동 COMMIT됩니다. 이후 ROLLBACK해도 돌아오지 않습니다 — DML 단원의 "TRUNCATE 복구 불가"와 같은 원리입니다.

한 장 정리 (암기 카드)

  • COMMIT 확정 · ROLLBACK 전체 취소 · SAVEPOINT+ROLLBACK TO 부분 취소.
  • ROLLBACK TO = 저장점 "이후"만 취소. 저장점·그 이전은 유지.
  • COMMIT 후 복구 불가(지속성). COMMIT 전 변경은 다른 세션에 안 보임.
  • DDL = 자동 커밋 — 앞선 DML까지 확정.

참고 출처

CBT 전자문제집 편집팀

자격증 개념과 기출 유형을 쉽게 정리합니다.

관련 글