데이터베이스에서 키(Key)의 개념과 키의 종류

 

1. 개요

데이터베이스에서 키(Key)는 릴레이션(테이블)에서 특정 튜플(행)을 유일하게 식별하거나, 다른 릴레이션과의 관계를 설정하는 데 사용되는 하나 이상의 속성(열) 집합이다. 키는 데이터의 무결성을 보장하고, 효율적인 데이터 검색 및 관리를 가능하게 하는 데이터베이스 설계의 핵심 요소이다.

 

2. 데이터베이스 키(Key)의 개념

  • 데이터베이스 키(Key)란 데이터베이스에서 튜플(Tuple)을 유일하게 식별하거나, 릴레이션 간의 관계를 표현하기 위해 사용하는 속성(Attribute) 또는 속성들의 집합을 말한다.
  • 키는 유일성(Uniqueness)과 최소성(Minimality)이라는 두 가지 중요한 특성을 가진다.
    • 유일성: 키를 구성하는 속성들의 값 조합이 모든 튜플에서 중복되지 않고 유일해야 한다.
    • 최소성: 키를 구성하는 속성들 중에서 어느 하나라도 제거하면 유일성이 깨져서는 안 된다. 즉, 키의 속성 개수가 최소여야 한다.

 

3. 키(Key)의 종류

키의 종류

구분 정의 특징/예시
슈퍼키
튜플을 유일하게 식별 가능한 속성 집합 유일성 보장, 최소성 보장 X
후보키, 기본키, 대체키 모두 슈퍼키의 부분집합
예: (주민등록번호, 이름)은 슈퍼 키가 될 수 있다.
후보키 튜플을 유일하게 식별하는 최소 속성 집합 유일성 + 최소성 만족
예: 학생 테이블에서 학번과 주민등록번호는 각각 후보 키가 될 수 있다.
기본키 후보키 중 대표로 선택된 키 NULL 불가, 중복 불가
예: 주민등록번호
대체키 기본키로 선택되지 않은 후보키 보조 식별자 역할
예: 기본키가 주민등록번호일 경우, 여권번호는 대체키
외래키 다른 릴레이션의 기본키 참조 참조 무결성 보장
예: 주문 테이블의 고객ID → 고객 테이블의 기본키 참조

 

 

4. 결론

키는 데이터베이스의 무결성을 보장하고, 릴레이션 간의 관계를 설정하는 데 필수적인 개념이다. 슈퍼 키, 후보 키, 기본 키, 대체 키, 외래 키와 같은 다양한 키의 종류를 올바르게 이해하고 활용하는 것은 효율적이고 안정적인 데이터베이스를 설계하는 데 매우 중요하다. 특히 기본 키와 외래 키는 관계형 데이터베이스의 핵심 원리를 구성한다.

+ Recent posts