키(Key)란?
데이터베이스에서 튜플들을 서로 구분할 수 있는 기준이 되는 속성
키(Key)의 종류
1. 후보키(Candidate Key)
- 튜플을 유일하게 식별하기 위해 사용하는 속성들의 부분집합, 모든 릴레이션에는 반드시 하나 이상의 후보키가 존재
- 릴레이션에 있는 모든 튜플에 대해 유일성과 최소성을 만족시켜야 함
▶ 유일성(Unique): 하나의 키 값으로 하나의 튜플만을 유일하게 식별
▶ 최소성(Minimality): 모든 레코드들을 유일하게 식별하는 데 꼭 필요한 속성으로만 구성
2. 기본키(Primary Key)
- 후보키 중에서 특별히 선정된 주키(Main Key), 중복된 값과 NULL 값을 가질 수 없음
- 유일성과 최소성을 가짐
3. 대체키(Alternate Key)
- 후보키가 둘 이상일 때 기본키를 제외한 나머지 후보키를 가리킴
4. 슈퍼키(Super Key)
- 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키
- 유일성은 만족, 최소성은 만족 X
5. 외래키(Foreign Key)