DB

[DataBase] 키(key) 개념 & 종류

JUNGKEUNG 2021. 11. 20. 15:52

키(key)의 개념


  • 키(key)는 데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 다른 튜플들과 구별할 수 있는 유일한 기준이 되는 Attribute(속성)이다.

 

 

 

튜플


  • 데이터베이스내의 주어진 목록과 관계있는 속성값의 모음이다.
  • 관련 테이블에서 행한 수치 이상으로 혼합된 자료 요소를 의미한다.
  • 릴레이션을 구성하는 각각의 행을 의미한다.
  • 튜플의 수를 카디널리티(Cardinality) 또는 기수라고 한다.
  • 릴레이션은 기본적으로 테이블이다.

출처 : http://www.gurubee.net/lecture/3582

 

 

 

기본키 (Primary Key)


  • 테이블에 기본키는 하나만 만들수 있다
  • 한 릴레이션에서 특정 튜플을 유일하게 구별할 수 있는 속성
  • Null 값을 가질 수 없다
  • 기본키로 정의된 속성에는 동일한 값이 중복되어 저장될 수 없다,

 

 

 

후보키 (Candidate Key)


  • 릴레이션을 구성하는 속성들 중에서 튜플을 유일하게 식별할 수 있는 속성들의 부분집합을 의미한다.
  • 모든 릴레이션은 반드시 하나 이상의 후보키를 가져야 한다.
  • 릴레이션에 있는 모든 튜플에 대해서 유일성과 최소성을 만족시켜야한다.

 

 

 

대체키 (Alternate Key)


  • 후보키가 둘 이상일 때 기본키를 제외한 나머지 후보키들을 말한다.

 

 

 

슈퍼키(Super Key)


  • 슈퍼키는 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키로서 릴레이션을 구성하는 모든 튜플 중 슈퍼키로 구성된 속성의 집합과 동일한 값은 나타내지 않는다.
  • 릴레이션을 구성하는 모든 튜플에 대해 유일성은 만족하지만, 최소성은 만족시키지 못한다.

 

 

 

외래키(Foreign Key)


  • 외래키는 참조되는 릴레이션의 기본키와 대응되어 릴레이션 간에 참조 관계를 표현하는데 중요한 도구로 사용된다.
  • 외래키로 지정되면 참조 테이블의 기본키에 없는 값은 입력할 수 없다.

 

 

 

참고 자료


https://limkydev.tistory.com/108

http://wiki.hash.kr/index.php/%ED%8A%9C%ED%94%8C

'DB' 카테고리의 다른 글

[DataBase] 인덱스와 넌인덱스 특징 & 차이  (0) 2021.11.21
RDBMS와 NoSQL의 차이점  (0) 2021.11.13