업무 규칙상 수강신청 1건은 1회차 납부 1건과 반드시 함께 등록되어야… | [SQLD] SQL 개발자 기출유형 모의고사 7회 상세 페이지

1[SQLD] SQL 개발자 기출유형 모의고사 7회
업무 규칙상 수강신청 1건은 1회차 납부 1건과 반드시 함께 등록되어야 한다. 다음 데이터와 작업 기록에 대한 설명으로 옳은 것은?

[수강신청]

신청번호수강생번호신청일
R1S12026-03-02
R2S22026-03-02
R3S12026-03-04

[납부]

신청번호회차금액
R11150000
R21120000
R31150000
R32150000

[작업 기록]

INSERT INTO 수강신청 VALUES ('R4', 'S3', DATE '2026-03-05');
COMMIT;
INSERT INTO 납부 VALUES ('R4', 1, 180000);  -- 제약 위반 오류
ROLLBACK;
1
R3은 납부가 두 건이라 규칙을 어겼다
2
R4는 신청만 남아 규칙을 어긴 상태다
3
두 INSERT 는 따로 커밋해야 한다
4
ROLLBACK 으로 R4 신청도 취소된다
해설

R4 신청은 이미 COMMIT 으로 확정된 뒤 납부 입력이 실패했으므로 ROLLBACK 을 해도 신청만 남아 함께 등록 규칙을 어긴 상태가 된다.

두 INSERT 를 하나의 트랜잭션으로 묶고 모두 성공한 뒤 한 번만 커밋해야 원자성이 지켜진다.

  • ROLLBACK 은 마지막 COMMIT 이후 작업만 되돌리므로 R4 신청은 남는다.
  • 1회차 납부가 있으면 되므로 납부가 두 건인 R3 은 규칙에 맞다.
  • 따로 커밋하면 한쪽만 저장되는 상태가 생겨 오히려 위험하다.

오류나 개정된 내용이 보이면 알려주세요

이어서 풀어보기

[SQLD] SQL 개발자 기출유형 모의고사 7회 50문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요SQLD SQL 개발자 실전 모의고사 암기장 전체 보기