SQLD관리 구문ON DELETE CASCADE난이도 3MCQ

SQLD ON DELETE CASCADE 기출문제 #3709

문제

부서 테이블의 1행을 삭제할 때, 이를 참조하는 사원 테이블의 행도 함께 삭제되도록 하는 외래키 표현으로 가장 적절한 것은?

① FOREIGN KEY (부서ID) REFERENCES 부서(부서ID) ON DELETE RESTRICT ② 부서 테이블이 사원 테이블을 REFERENCES 하고 ON DELETE CASCADE를 지정한다. ③ 사원 테이블의 부서ID가 부서 테이블의 부서ID를 REFERENCES 하고 ON DELETE CASCADE를 지정한다. ④ FOREIGN KEY (부서ID) REFERENCES 부서(부서ID) ON DELETE SET NULL

정답

3

해설

정답: 3. 자식 테이블인 사원 테이블의 외래키가 부모 테이블인 부서 테이블을 참조하고 ON DELETE CASCADE를 지정해야 부모 삭제 시 자식 행도 삭제된다.

오답 풀이

  • 1번: RESTRICT는 자식 행이 있으면 부모 삭제를 제한한다.
  • 2번: 참조 방향이 반대이다.
  • 3번: 자식이 부모를 참조하고 CASCADE를 지정하는 올바른 방식이다.
  • 4번: SET NULL은 자식 행을 삭제하지 않고 외래키 값을 NULL로 만든다.

보충 개념 외래키는 자식 테이블에 정의하며 부모 테이블의 기본키 또는 고유키를 참조한다. ON DELETE CASCADE는 부모 삭제 시 자식 행 삭제를 전파한다.

SQLD 시험 준비 가이드

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

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

[SQLD] ON DELETE CASCADE 관리 구문 기출 #3709 | 문어CBT