본문 바로가기
자격증/정보처리기사실기

관계형 데이터베이스의 제약조건 - 키(Key)

by J._.cobb 2022. 4. 29.

키(Key)

  • 키는 데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 기준이 되는 속성을 말한다.
  • 키의 종류
    • 후보키(Candidate Key)
    • 기본키(Primary Key)
    • 대체키(Alternate Key)
    • 슈퍼키(Super Key)
    • 외래키(Foreign Key)

후보키(Candidate Key)

  • 후보키는 릴레이션을 구성하는 속성들 중에서 튜플을 유일하게 식별하기 위해 사용되는 속성들의 부분집합이다.
  • 기본키로 사용할 수 있는 속성들을 말한다.
  • 후보키는 유일성(Unique)과 최소성(Minimality)을 모두 만족시켜야 한다.
  • 유일성(Unique)
    • 하나의 키 값으로 하나의 튜플만을 유일하게 식별할 수 있어야 함
  • 최소성(Minimality)
    • 키를 구성하는 속성 하나를 제거하면 유일하게 식별할 수 없도록 꼭 필요한 최소의 속성으로 구성되어야 함

기본키(Primary Key)

  • 기본키는 후보키 중에서 특별히 선정된 주키(Main Key)이다.
  • 기본키는 중복된 값을 가질 수 없다.
  • 기본키는 한 릴레이션에서 특정 튜플을 유일하게 구별할 수 있는 속성이다.
  • 기본키는 NULL값을 가질 수 없다. 즉 튜플에서 기본키로 설정된 속성에는 NULL 값이 있어서는 안 된다.

대체키(Alternate Key)

  • 대체키는 후보키가 둘 이상일 때 기본키를 제외한 나머지 후보키를 의미한다.
  • 대체키를 보조키라고도 한다.

슈퍼키(Super Key)

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

외래키(Foreign Key)

  • 외래키는 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합을 의미한다.
  • 한 릴레이션에 속한 속성 A와 참조 릴레이션의 기본키인 B가 동일한 도메인상에서 정의되었을 때의 속성 A를 외래키라고 한다.
  • 외래키로 지정되면 참조 릴레이션의 기본키에 없는 값은 입력할 수 없다.