[2024. 중등임용 정보ㆍ컴퓨터] SQL문 실행

SQL문 실행

정답

위 SQL문은 외래 키에 의한 참조 무결성 제약 조건을 위반한다.

출제 의도

릴레이션 간의 관계에서 PRIMARY KEY, FOREIGN KEY로 설정된 무결성 제약을 이해하고, UPDATE 문이 어떤 무결성 제약을 위반하는지를 파악할 수 있는지를 묻는 문제이다.

풀이 과정

학생 테이블의 정의를 보면, 열 ‘학과’에 대해 다음과 같은 외래 키 제약이 설정되어 있다.

FOREIGN KEY(학과) REFERENCES 학과(학과명)

즉, 학생.학과에 들어갈 값은 반드시 학과 테이블의 학과명 열에 실제로 존재하는 값이어야 한다. 현재 학과 테이블에는 ‘컴퓨터교육과’, ‘컴퓨터공학과’만 존재한다.

제시된 UPDATE 문은 학과가 ‘컴퓨터공학과’인 학생들의 학과 값을 ‘인공지능학과’로 바꾸려고 한다.

그러나 학과 테이블에는 ‘인공지능학과’라는 학과명이 존재하지 않기 때문에, 이 UPDATE 문이 실행되면 학생.학과가 학과(학과명)에 존재하지 않는 값이 되어 외래 키(참조 무결성) 제약 조건을 위반하게 된다.

<풀이가 부정확할 수 있으니 반드시 교차검증 확인 바랍니다.>