다음 릴레이션에서 키에 대한 설명으로 옳지 않은 것은? (단, 밑줄 친… | [7급 국가직 데이터베이스론] 23년 1회차 기출문제 상세 페이지
1[7급 국가직 데이터베이스론] 23년 1회차
다음 릴레이션에서 키에 대한 설명으로 옳지 않은 것은? (단, 밑줄 친 속성은 기본 키이고, 고객 릴레이션에서 주민등록번호 속성의 값은 중복되지 않는다)
고객
| 고객ID | 고객이름 | 주민등록번호 | 등급 | 적립금 | 추천고객 |
|---|---|---|---|---|---|
| K123 | 김탁구 | 96××××-××××××× | Gold | 2000 | P492 |
| L243 | 이승룡 | 97××××-××××××× | Vip | 3000 | K123 |
| C524 | 최무선 | 93××××-××××××× | Gold | 2000 | K123 |
| P492 | 박하얀 | 95××××-××××××× | Silver | 1000 | L243 |
| 주문번호 | 주문고객 | 주문제품 | 수량 | 단가 | 주문일자 |
|---|---|---|---|---|---|
| 1 | K123 | 우동 | 10 | 2000 | 2023 - 01 - 01 |
| 2 | C524 | 라면 | 5 | 1000 | 2023 - 01 - 02 |
| 3 | P492 | 만두 | 7 | 3000 | 2023 - 01 - 03 |
1
고객 릴레이션에서 고객ID, 주민등록번호, (고객ID, 고객이름)의 쌍, (고객이름, 주민등록번호)의 쌍은 슈퍼 키가 될 수 있다.
2
고객 릴레이션에서 추천고객 속성은 자신의 고객ID 속성을 참조하는 외래 키로 정의가 가능하며, NULL 값을 가질 수 있다.
3
주문 릴레이션의 주문고객 속성을 고객 릴레이션의 고객ID에 대한 외래 키로 정의할 때, 주문고객의 값으로 ‘S254’를 가질 수 있다.
4
고객 릴레이션에서 고객ID, 주민등록번호는 후보 키가 될 수 있으나, (고객ID, 고객이름)의 쌍은 후보 키가 될 수 없다.
해설
옳지 않은 것은 주문고객 값으로 'S254'를 가질 수 있다는 설명이다.
외래 키 값은 참조하는 릴레이션의 기본 키 값 중 하나이거나 NULL이어야 하는데(참조 무결성), 고객 릴레이션에는 고객ID가 S254인 튜플이 없다.
- 고객ID, 주민등록번호는 각각 유일하므로 이를 포함한 (고객ID, 고객이름), (고객이름, 주민등록번호)도 모두 슈퍼 키가 된다.
- 추천고객은 같은 릴레이션의 고객ID를 참조하는 자기 참조 외래 키로 정의할 수 있고, 추천인이 없으면 NULL을 가질 수 있다.
- 고객ID와 주민등록번호는 최소성을 만족하는 후보 키이지만, (고객ID, 고객이름)은 고객ID만으로도 유일하므로 최소성을 만족하지 못해 후보 키가 아니다.
오류나 개정된 내용이 보이면 알려주세요