데이터베이스에서 키(Key)의 개념과 키의 종류
1. 개요
데이터베이스에서 키(Key)는 릴레이션(테이블)에서 특정 튜플(행)을 유일하게 식별하거나, 다른 릴레이션과의 관계를 설정하는 데 사용되는 하나 이상의 속성(열) 집합이다. 키는 데이터의 무결성을 보장하고, 효율적인 데이터 검색 및 관리를 가능하게 하는 데이터베이스 설계의 핵심 요소이다.
2. 데이터베이스 키(Key)의 개념
- 데이터베이스 키(Key)란 데이터베이스에서 튜플(Tuple)을 유일하게 식별하거나, 릴레이션 간의 관계를 표현하기 위해 사용하는 속성(Attribute) 또는 속성들의 집합을 말한다.
- 키는 유일성(Uniqueness)과 최소성(Minimality)이라는 두 가지 중요한 특성을 가진다.
- 유일성: 키를 구성하는 속성들의 값 조합이 모든 튜플에서 중복되지 않고 유일해야 한다.
- 최소성: 키를 구성하는 속성들 중에서 어느 하나라도 제거하면 유일성이 깨져서는 안 된다. 즉, 키의 속성 개수가 최소여야 한다.
3. 키(Key)의 종류

| 구분 | 정의 | 특징/예시 |
| 슈퍼키 |
튜플을 유일하게 식별 가능한 속성 집합 | 유일성 보장, 최소성 보장 X 후보키, 기본키, 대체키 모두 슈퍼키의 부분집합 예: (주민등록번호, 이름)은 슈퍼 키가 될 수 있다. |
| 후보키 | 튜플을 유일하게 식별하는 최소 속성 집합 | 유일성 + 최소성 만족 예: 학생 테이블에서 학번과 주민등록번호는 각각 후보 키가 될 수 있다. |
| 기본키 | 후보키 중 대표로 선택된 키 | NULL 불가, 중복 불가 예: 주민등록번호 |
| 대체키 | 기본키로 선택되지 않은 후보키 | 보조 식별자 역할 예: 기본키가 주민등록번호일 경우, 여권번호는 대체키 |
| 외래키 | 다른 릴레이션의 기본키 참조 | 참조 무결성 보장 예: 주문 테이블의 고객ID → 고객 테이블의 기본키 참조 |
4. 결론
키는 데이터베이스의 무결성을 보장하고, 릴레이션 간의 관계를 설정하는 데 필수적인 개념이다. 슈퍼 키, 후보 키, 기본 키, 대체 키, 외래 키와 같은 다양한 키의 종류를 올바르게 이해하고 활용하는 것은 효율적이고 안정적인 데이터베이스를 설계하는 데 매우 중요하다. 특히 기본 키와 외래 키는 관계형 데이터베이스의 핵심 원리를 구성한다.
'IT Tech.' 카테고리의 다른 글
| (컴퓨터시스템) 버퍼링, 스풀링, 버퍼오버플로우 (0) | 2025.09.15 |
|---|---|
| (컴퓨터시스템) 운영체제와 컴퓨터 시스템의 구성 요소 (1) | 2025.09.15 |
| (DB) 릴레이션의 4가지 특성 (1) | 2025.09.13 |
| (AI) 머신러닝 TPE - 작업(Task) 성능(Performance) 경험(Experience) (0) | 2025.09.13 |
| (소프트웨어공학) 소프트웨어 품질보증 (1) | 2025.09.13 |