SQLDSQL 기본난이도 4MCQ

SQLD SQL 기본 기출문제 #1368

문제

다음 트랜잭션 시나리오에서 최종 COMMIT 후 테이블 PRODUCT의 총 행 수는?

SQL
CREATE TABLE PRODUCT (PID INT PRIMARY KEY, PRICE DECIMAL(10,2) CHECK(PRICE >= 1000)); INSERT INTO PRODUCT VALUES (1, 1500.00); INSERT INTO PRODUCT VALUES (2, 2000.00); SAVEPOINT SP1; INSERT INTO PRODUCT VALUES (3, 500.00); -- CHECK 제약 위반 INSERT INTO PRODUCT VALUES (4, 3000.00); ROLLBACK TO SP1; INSERT INTO PRODUCT VALUES (5, 1200.00); INSERT INTO PRODUCT VALUES (6, 800.00); -- CHECK 제약 위반 ROLLBACK TO SP1; INSERT INTO PRODUCT VALUES (7, 2500.00); COMMIT;

① 2행 ② 3행 ③ 4행 ④ 5행

정답

2

해설

초기 2개 행 삽입 후 SP1 설정. 첫 번째 블록에서 PID=3은 CHECK 제약 위반으로 실패, PID=4는 성공하지만 ROLLBACK TO SP1으로 취소. PID=5 삽입 성공하지만 PID=6이 CHECK 제약 위반으로 실패하면서 다시 ROLLBACK TO SP1. 최종적으로 PID=7만 추가되어 총 3행(1,2,7)이 남습니다.

이런 문제 20~50개를 한 번에 풀어보세요

매번 새로 추가되는 모의고사 + 오답 자동 복습 + 회차별 실력 추적. 회원가입 후 무료 이용.

[SQLD] SQL 기본 기출 #1368 | sqldpass