문제
다음 중 아래 두 테이블 사이에서 외래 키(Foreign Key)에 해당하는 필드는?
[주문] 테이블의 기본 키는 '주문번호', [고객] 테이블의 기본 키는 '고객아이디'이다.
주문(주문번호, 주문일자, 고객아이디, 금액) 고객(고객아이디, 이름, 연락처)
① 주문 테이블의 주문번호 ② 고객 테이블의 이름 ③ 주문 테이블의 고객아이디 ④ 고객 테이블의 고객아이디
정답
3번
해설
정답: 3. 외래 키는 한 테이블의 속성이 다른 테이블의 기본 키를 참조하는 것이다. [주문] 테이블의 '고객아이디'는 [고객] 테이블의 기본 키 '고객아이디'를 참조하므로 외래 키이다.
오답 풀이
- 1번: 주문번호는 [주문] 테이블의 기본 키이다.
- 2번: 이름은 [고객] 테이블의 일반 속성으로 기본 키를 참조하지 않는다.
- 3번: 주문 테이블의 고객아이디는 고객 테이블의 기본 키를 참조하므로 외래 키이다.
- 4번: 고객 테이블의 고객아이디는 그 테이블의 기본 키이다.
보충 개념 외래 키는 참조하는 기본 키와 같은 도메인을 가져야 하며, 두 릴레이션 간의 관계를 맺어 참조 무결성을 보장한다.