문제
다음 중 CASCADE 옵션이 설정된 외래키 제약조건에서 참조되는 부모 테이블의 레코드가 삭제될 때 발생하는 상황으로 가장 적절한 것은?
① 자식 테이블의 해당 외래키 값이 자동으로 NULL로 변경된다 ② 부모 테이블의 삭제 작업이 거부되고 오류가 발생한다 ③ 자식 테이블에서 해당 외래키를 참조하는 모든 레코드가 자동으로 삭제된다 ④ 자식 테이블의 외래키 제약조건이 일시적으로 비활성화된다
정답
3번
해설
③ 정답: CASCADE 옵션이 설정된 외래키에서 부모 테이블의 레코드가 삭제되면, 해당 레코드를 참조하는 자식 테이블의 모든 레코드가 연쇄적으로 자동 삭제된다. ① SET NULL 옵션의 동작이다. ② RESTRICT 또는 NO ACTION 옵션의 동작이다. ④ 제약조건이 비활성화되는 것이 아니라 연쇄 삭제가 실행된다.