문제
다음 트랜잭션 실행 후 최종 데이터 건수는?
SQLINSERT INTO ORDERS VALUES(100); INSERT INTO ORDERS VALUES(200); SAVEPOINT S1; INSERT INTO ORDERS VALUES(300); SAVEPOINT S2; INSERT INTO ORDERS VALUES(400); ROLLBACK TO S1; INSERT INTO ORDERS VALUES(500); COMMIT;
① 2건 ② 3건 ③ 4건 ④ 5건
정답
2번
해설
100, 200 삽입 후 S1 저장점 생성. 300 삽입 후 S2 저장점 생성. 400 삽입 후 ROLLBACK TO S1으로 S1 이후의 모든 작업(300, S2, 400)이 취소됨. 이후 500을 삽입하고 COMMIT으로 확정. 최종 데이터: 100, 200, 500 = 3건