2022 국가직7급 데이터베이스론 5번 해설 — DDL과 제약조건
정답 ③번출제 쟁점 DDL과 제약조건발문 옳지 않은 것 고르기
문제
다음 상점 테이블과 상품 테이블을 생성하는 SQL 구문에 대한 설명으로 옳지 않은 것은?
- ① 상점 테이블의 ID 속성에 동일한 값을 갖는 두 개 이상의 투플이 존재할 수 없다.
- ② 상점 테이블과 상품 테이블에 대해 자연 조인(natural join) 연산을 수행할 수 있다.
- ③ 상품 테이블의 상점_ID 속성에 NULL 값이 아닌 상점 테이블의 ID 속성에 존재하지 않는 값을 저장할 수 있다. ← 정답
- ④ 상점 테이블의 이름 속성과 주소 속성에 길이가 200 미만인 문자열을 입력하더라도, 두 속성에서 저장 공간의 낭비가 발생하지 않는다.
선지별 해설
① 상점 테이블의 ID 속성에 동일한 값을 갖는 두 개 이상의 투플이 존재할 수 없다.
이 선지 진술은 옳음(O)
상점 테이블의 ID는 PRIMARY KEY이므로 유일성이 보장되어 중복값을 가질 수 없다.
② 상점 테이블과 상품 테이블에 대해 자연 조인(natural join) 연산을 수행할 수 있다.
이 선지 진술은 옳음(O)
두 테이블에 공통 속성명(ID, 이름)이 존재하므로 자연 조인을 수행할 수 있다. 옳은 설명이다.
③ 상품 테이블의 상점_ID 속성에 NULL 값이 아닌 상점 테이블의 ID 속성에 존재하지 않는 값을 저장할 수 있다.
이 선지 진술은 틀림(X)
상점_ID는 상점(ID)를 참조하는 외래키이므로 NULL이 아니면서 부모에 없는 값은 참조 무결성 위반으로 저장할 수 없다. 틀린 설명으로 정답(③)에 해당한다.
④ 상점 테이블의 이름 속성과 주소 속성에 길이가 200 미만인 문자열을 입력하더라도, 두 속성에서 저장 공간의 낭비가 발생하지 않는다.
이 선지 진술은 옳음(O)
VARCHAR는 가변 길이 문자형이므로 실제 입력된 길이만큼만 저장하여 공간 낭비가 발생하지 않는다. 옳은 설명이다.
핵심 요약 (Q&A)
- Q. 2022 국가직7급 데이터베이스론 5번의 핵심 쟁점은 무엇인가?
- A. 2022 국가직7급 데이터베이스론 5번은 DDL과 제약조건에 관한 문항으로, "옳지 않은 것"을 고르는 문제입니다.
- Q. 2022 국가직7급 데이터베이스론 5번의 정답은?
- A. 정답은 ③번입니다. 상점_ID는 상점(ID)를 참조하는 외래키이므로 NULL이 아니면서 부모에 없는 값은 참조 무결성 위반으로 저장할 수 없다. 틀린 설명으로 정답(③)에 해당한다.