SQLD › 🤖 [예시문제] (2026-08-15)

8. [예시문제] 다음 중 트랜잭션(Transaction) 제어어(TCL)에 대한 설명으로 가장 적절하지 않은 것은?

  1. COMMIT은 데이터 변경 작업을 영구적으로 데이터베이스에 반영한다.
  2. ROLLBACK은 현재 트랜잭션 내에서 수행된 모든 변경 사항을 취소하고 이전 COMMIT 시점으로 되돌린다.
  3. SAVEPOINT는 트랜잭션 내에서 특정 시점을 저장하여, 부분적인 ROLLBACK이 가능하도록 한다.
  4. ROLLBACK TO SAVEPOINT 명령은 해당 SAVEPOINT 이후의 변경 사항만 취소하고, 저장점 이전의 변경 사항은 유지한다.

정답: 2번

2번 보기가 가장 적절하지 않습니다. ROLLBACK 명령은 현재 트랜잭션 내에서 수행된 모든 변경 사항을 취소하고 '트랜잭션 시작점(또는 마지막 COMMIT 시점)'으로 되돌립니다. '이전 COMMIT 시점'이라는 표현은 맞지만, SAVEPOINT 없이 단순히 ROLLBACK만 사용했을 때 모든 변경 사항을 되돌린다는 점을 강조해야 합니다. SAVEPOINT는 부분적인 롤백을 가능하게 하므로, ROLLBACK만으로는 SAVEPOINT 이후의 변경 사항만 취소할 수 없습니다. 1, 3, 4번 보기는 COMMIT, SAVEPOINT, ROLLBACK TO SAVEPOINT에 대한 올바른 설명입니다.