database-key

KEY

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

1. 슈퍼키(Super Key)

  • 데이터 베이스에서 테이블의 행을 고유하게 식별할 수 있는 속성 또는 속성의 집합
  • 고유하게 식별하는 모든 조합을 나타냄

2. 후보 키(candidate key)

  • 슈퍼 키 중에 더이상 줄일 수 없는 형태를 가진 것
  • 슈퍼 키를 구성하는 속성 중 하나라도 빠지면 유일성을 잃어버리는 조합
  • 기본 키로 선정될 수 있는 후보이기 때문에 후보키라고 이름이 붙여짐
  • Null 값을 허용할지 안할지는 여러가지 설이 존재함(된다 하는 사람도 있고 안된다 하는 사람도 있음)

3. 기본 키(Primary Key, 주 키)

  • 식별자로 이용하기에 가장 적합한 것을 설계자가 선택 정의한 후보키
  • 후보키중 하나를 설계자가 선택해서 기본키로 삼을수 있음
  • 항상 고유한 값을 가짐
  • Null 값이 존재하지 않아야함

4. 대리 키(alternate key)

  • 후보 키들중 기본키로 선택받지 못한 나머지 키들
  • 기본키의 조건도 만족하기때문에 언제든지 기본키로 대체될 수 있다.
  • 대체 키(surrogate key)라고도 함

5. 외래 키(외부 키, Foreign Key)

  • 테이블과 테이블을 연결시켜주는 키
  • 여러 테이블을 동시에 분석할때 유용하다
  • 하나의 테이블로 저장할때 발생하는 중복된 데이터 발생을 방지하면서 데이터를 이어줄 수 있다.