Key 정리
| 키 | 뜻 | 시험 키워드 |
|---|---|---|
| 슈퍼키 | 튜플을 유일하게 구분할 수 있는 속성들의 집합 | 유일성 O, 최소성 X 가능 |
| 후보키 | 슈퍼키 중에서 최소성을 만족하는 키 | 유일성 O, 최소성 O |
| 기본키 | 후보키 중 대표로 선택한 키 | 대표 키, NULL 불가, 중복 불가 |
| 대체키 | 후보키 중 기본키로 선택되지 않은 키 | 탈락한 후보키 |
| 외래키 | 다른 테이블의 기본키를 참조하는 키 | 테이블 연결, 참조 |
예시:
학생 테이블
| 학번 | 주민번호 | 이름 |
|---|---|---|
| 1 | 990101 | 철수 |
| 2 | 990102 | 영희 |
학번→ 학생을 구분 가능주민번호→ 학생을 구분 가능학번 + 이름→ 구분은 가능하지만 이름은 굳이 필요 없음
그래서:
- 슈퍼키:
학번,주민번호,학번+이름 - 후보키:
학번,주민번호 - 기본키: 후보키 중 선택한 것, 예:
학번 - 대체키: 선택 안 된 후보키, 예:
주민번호 - 외래키: 다른 테이블 기본키를 가져와 참조하는 키
암기:
슈퍼키 = 유일하기만 하면 됨
후보키 = 유일 + 최소
기본키 = 후보키 중 대표
대체키 = 대표 못 된 후보키
외래키 = 다른 테이블 참조