- 슈퍼키 (Super Key)
- 슈퍼키는 테이블 내의 행을 중복되지 않게 식별해주는 속성으로, 슈퍼키 열의 값으로써 단일 행을 특정할 수 있다.
- 예를 들어, 주민등록번호는 사람마다 달라 한 사람을 특정할 수 있으니, 슈퍼키의 예시라 할 수 있다.
- 또한 슈퍼키는 단일 속성일 필요가 없어, 주민등록번호 + 이름의 초과 조합으로도 사람을 식별할 수만 있다면 슈퍼키라 할 수 있다.
- 후보키 (Candidate Key)
- 후보키는 슈퍼키 중 더 이상 줄일 수 없는 형태를 가진 키다. 이는 후보키를 구성하는 속성 중 어느 하나라도 제외될 경우 유일성을 만족할 수 없음을 의미한다.
- 예를 들어, 상기한 주민등록번호 + 이름의 조합에서 이름을 제외하면 주민등록번호만 남게 되는데, 주민등록번호 만으로도 사람을 특정할 수 있으므로 주민등록번호 + 이름은 슈퍼키이지만 후보키는 될 수 없다.
- 후보키라는 명칭은 이것이 기본키로 선정될 수 있는 후보라는 것에서 유래되었다.
- 기본키 (Primary Key, PK)
- 기본키는 후보키 중에서 선택된 키로, 테이블 내에 오직 하나만 존재할 수 있다.
- 후보키의 특성인 유일성과 최소성을 마찬가지로 가지고 있지만, 모든 후보키가 기본키로 선정될 수 있는 것은 아니다. NULL 값을 가질 수 있는 후보키와 달리, 기본키는 NULL 값을 가질 수 없기 때문이다.
- 대체키 (Alternate Key)
- 대체키는 후보키 중에서 기본키로 선택되지 못한 나머지 키들을 말한다.
- 기본키 + 대체키는 후보키이다.
유일성 O (단일 행을 특정하는 성질) |
|
최소성 O (더 이상 줄일 수 없는 성질) |
후보키, 기본키, 대체키 |
최소성 X | 슈퍼키 |
'CS > 데이터베이스' 카테고리의 다른 글
데이터베이스의 기본 용어 (0) | 2024.12.03 |
---|
댓글