[정보처리기사 필기] 데이터베이스 설계 - 064. 관계형 데이터베이스의 제약 조건 - 키 Key

1. 키의 개념 및 종류

  • 데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 튜플들을 서로 구분할 수 있는 기준이 되는 애트리뷰트
  • 키의 종류 : 후보키, 기본키, 대체키, 슈퍼키, 외래키 등

2. 후보키 Candidate key

  • 릴레이션을 구성하는 속성들 중에서 튜플을 유일하게 식별하기 위해 사용하는 속성들의 부분집합
  • 기본키로 사용할 수 있는 속성들
  • 하나의 릴레이션 내에서는 중복된 튜플들이 있을 수 없으므로 모든 릴레이션에는 반드시 하나 이상의 후보키가 존재
  • 후보키는 릴레이션에 있는 모든 튜플에 대해서 유일성과 최소성을 만족시켜야 함
    • 유일성 Unique : 하나의 키 값으로 하나의 튜플만을 유일하게 식별할 수 있어야 함
    • 최소성 Minimaity : 모든 레코드들을 유일하게 식별하는데 꼭 필요한 속성으로만 구성

3. 기본키 Primary Key

  • 후보키 중에서 특별히 선정된 주키 Main Key 로 중복된 값을 가질 수 없음
  • 한 릴레이션에서 특정 튜플을 유일하게 구별할 수 있는 속성
  • 후보키의 성질을 갖음
  • 유일성과 최소성을 가지며 튜플을 식별하기 위해 반드시 필요한 키
  • NULL 값을 가질 수 없음, 튜플에서 기본키로 설정된 속성에는 NULL 값이 있어서는 안 됨
    • 널 값 NULL Value : 데이터베이스에서 아직 알려지지 않거나 모르는 값, 정보 부재를 나타내기 위해 사용하는, 이론적으로 아무것도 없는 특수한 데이터

4. 대체키 Alternate Key

  • 후보키가 둘 이상일 때 기본키를 제외한 나머지 후보키를 의미
  • 보조키

5. 슈퍼키 Super Key

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

6. 외래키 Foreign Key

  • 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합을 의미
  • 참조되는 릴레이션의 기본키와 대응되어 릴레이션 간에 참조 관계를 표현하는데 중요한 도구
    • 참조 릴레이션 : 외래키를 포함하는 릴레이션이 참조하는 릴레이션, 대응되는 기본키를 포함하는 릴레이션이 참조 릴레이션
  • 한 릴레이션에 속한 속성 A와 참조 릴레이션의 기본키인 B가 동일한 도메인 상에서 정의되었을 때의 속성 A를 외래키라고 함
  • 외래키로 지정되면 참조 릴레이션의 기본키에 없는 값은 입력할 수 없음