키(Key)
DB에서 조건에서 만족하는 레코드를 찾거나 순서대로 정렬 할 때 다른 레코드와 구별할 수 있는 기준이 되는 컬럼
유일성과 최소성
- 유일성 : 하나의 키로 각 레코드를 식별 할 수 있는 성질
- 최소성 : 키를 구성하는 컬럼들 중 가장 최소한의 컬럼으로만 키를 구성하는 성질
키(Key) 종류
- 슈퍼 키(Super Key) : 레코드를 유일하게 식별할 수 있는 컬럼의 집합(ex. 학번+이름, 주민등록번호+이름, 학번, 주민등록번호)
- 후보 키(Candidate Key) : 슈퍼키 중에서 유일성과 최소성을 모두 만족하는 키(ex. 학번, 주민번호)
- 기본 키(Primary Key) : 후보 키에서 선택된 키. NULL 값과 동일한 값을 가지지 않는 키
- 대체 키(Surrogate Key) : 후보 키 중에 기본 키로 선택되지 않은 키
- 복합 키(Composite Key) : 2개 이상의 컬럼을 조합해 사용하는 키(ex. 학번+이름)
- 외래 키(Foreign Key) : 다른 테이블의 기본 키(Primary key)를 참조하는 컬럼. 외래 키로 지정되면 참조 테이블의 기본 키에 없는 값은 입력이 불가