CS/데이터베이스
키(Key)의 개념 및 종류
개발싫어
2021. 10. 20. 18:39
728x90
- 한 릴레이션에서 다른 튜플과 구별할 수 있는 기준이 되는 애트리뷰트
- 유일성
- 해당 키로 튜플을 유일하게 구별할 수 있어야한다
- 최소성
- 키를 구성하는 속성이 최소한의 속성이어야한다
- 구성하는 속성 중 따로 빼서 유일성을 만족하는 속성이 없어야한다.
- (학번,이름,핸드폰번호)가 하나의 키 일때 학번은 혼자서 유일성을 만족시킬 수 있으므로 최소성을 만족하지 않음
- 슈퍼키
- 한 릴레이션 내의 모든 속성들의 집합
- 학번, 주민번호, 학번+주민번호
- 유일성은 만족하지만 최소성은 만족하지 못한다.
- 후보키
- 키 중에 유일성과 최소성을 만족하는 키들의 집합
- 모든 릴레이션은 하나 이상이 후보키를 갖는다.
- 기본 키
- 후보 키중 선택한 주 키
- Null 값을 가질 수 없음
- 대체키
- 후보키 중 기본키를 제외한 나머지 키
- 외래키
- 두 릴레이션이 관계가 있을 때 참조하고 있는 릴레이션의 기본키
- R1이 R2를 참조하고 있을 때 R2의 기본키는 R1의 외래키가 됨
- 무결성
- 개채 무결성
- 기본키는 널값이면 안된다
- 참조 무결성
- 외래키는 널값이 아니어야한다
- 참조하고 있는 릴레이션이 없는 값이면 안된다
- 도메인 무결성
- 속성의 값은 그 속성의 도메인의 값이어야한다
- 개채 무결성