[키(Key) 란?]
: 키는 데이터베이스에서 조건에 만족하는 튜플을 찾거나, 순서대로 정렬할 때 튜플들을 서로 구분할 수 있는 기준이 되는 애트리뷰트를 말합니다
[키의 종류]
1) 기본 키(Primary Key)
- 기본 키는 후보 키 중에서 특별히 선정된 키로 중복된 값을 가질 수 없습니다.
- 기본 키는 후보 키의 성질을 갖습니다.
- 유일성과 최소성을 가지며 튜플을 식별하기 위해 반드시 필요한 키입니다.
- 기본 키는 NULL값을 가질 수 없습니다. (즉, 튜플에서 기본 키로 설정된 속성에는 NULL값이 있어서는 안됩니다.)
2) 후보 키(Candidate Key)
- 릴레이션을 구성하는 속성들 중에서 튜플을 유일하게 식별하기 위해 사용되는 속성들의 부분집합입니다.
- 후보 키는 유일성과 최소성을 모두 만족합니다.
* 유일성(Unique) : 하나의 키 값으로 하나의 튜플만을 유일하게 식별할 수 있어야 합니다.
* 최소성(Minimality) : 모든 레코드들을 유일하게 식별하는 데 꼭 필요한 속성으로만 구성되어야 합니다.
예시) <학생>릴레이션에서 '학번'이나 '주민번호'는 다른 레코드를 유일하게 구별할 수 있는 기본 키로 사용할 수 있으므로 후보 키입니다. '학과' 등은 다른 레코드와 중복 될 가능성이 있으므로 기본 키로 사용할 수 없습니다.
3) 대체 키(Alternate Key)
- 대체 키는 후보키 중에서 선정된 기본 키를 제외한 나머지 후보 키를 의미합니다.
4) 슈퍼 키(Super Key)
- 복합 키 또는 연결 키라고 합니다.
- 기본 키로 사용되며 2개 이상의 열을 1개의 후보 키로 만들어 기본키로 활용되는 키입니다.
- 슈퍼 키는 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키를 말합니다.
- 릴레이션을 구성하는 모든 튜플 중 슈퍼 키로 구성된 속성의 집합과 동일한 값을 나타나지 않습니다.
- 슈퍼 키는 릴레이션을 구성하는 모든 튜플에 대해 유일성은 만족하지만, 최소성은 만족하지 못합니다.
5) 외래 키(Foreign Key)
- 외래 키는 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합을 의미합니다.
- 외래 키는 릴레이션 간의 관계를 표현할 때 사용합니다.
- 한 릴레이션에 속한 속성 A와 참조 릴레이션의 기본키인 B가 동일한 도메인상에서 정의 되었을 때의 속성 A를 외래 키라고 합니다.
- 외래 키는 참조 릴레이션의 기본 키와 동일한 키속성을 가집니다.
예시) <수강>이라는 릴레이션이 <학생>릴레이션을 참조하고 있을 때, <학생>릴레이션의 "학번"이 기본 키라고 가정하겠습니다. 이 때, <수강>릴레이션의 "학번"은 외래 키가 됩니다.
'DB' 카테고리의 다른 글
시스템 카탈로그(System Catalog) (0) | 2016.04.24 |
---|---|
커서(Cursor)의 개념과 관련 명령어 (0) | 2016.04.24 |
릴레이션(Relation)의 특징 (0) | 2016.04.24 |
데이터베이스 언어의 정의와 종류(DDL, DML, DCL) (0) | 2016.04.24 |
DBMS의 필수 기능, 장/단점 (0) | 2016.04.24 |
WRITTEN BY