topic★★★★★난이도 · 약 15분
키와 무결성 제약조건
기본키·외래키·후보키·슈퍼키·대체키 구분과 참조 무결성.
#DB#키#무결성
왜 배우는가
키의 종류와 무결성 제약조건은 거의 매회 출제된다. 후보키 ⊃ 기본키 + 대체키 관계를 확실히 잡아야 한다.
| 키 종류 | 정의 | 특징 |
|---|---|---|
| 슈퍼키 | 유일성을 만족하는 속성 집합 | 최소성 불필요 |
| 후보키 | 유일성 + 최소성 | 슈퍼키 중 최소 |
| 기본키 | 후보키 중 선택된 하나 | NULL 불가 |
| 대체키 | 후보키 중 기본키가 아닌 것 | — |
| 외래키 | 다른 테이블의 기본키를 참조 | 참조 무결성 |
무결성 제약조건은 3가지: ① 개체 무결성 — 기본키는 NULL 불가. ② 참조 무결성 — 외래키 값은 참조 테이블에 존재하거나 NULL. ③ 도메인 무결성 — 속성 값은 정해진 도메인 안에 존재.
기출 포인트 — '다음 중 후보키가 될 수 있는 것은?' 문제에서 유일성 + 최소성 두 조건을 동시에 확인해야 한다.
외래키 삭제 옵션: CASCADE(연쇄 삭제), SET NULL(NULL 세팅), SET DEFAULT(기본값), RESTRICT(삭제 거부). 시험에서는 CASCADE와 RESTRICT 차이가 자주 출제된다.
실기 드릴 3문항
edit실기 드릴 · 단답형
후보키 중 기본키로 선택되지 않은 키를 무엇이라 하는가?
check_circle실기 드릴 · OX
슈퍼키는 최소성을 만족해야 한다.
space_bar실기 드릴 · 빈칸 채우기
외래키 값은 참조하는 테이블의 기본키 값이거나 (___) 이어야 한다. — 이를 (___) 무결성이라 한다.