반응형
SMALL
관계형 데이터베이스에서 "키"는 데이터의 기준점입니다.
테이블에서 어떤 데이터를 식별하고, 어떤 관계로 연결할지 결정하는 역할을 하죠.
이번 글에서는 키의 종류와 각각의 차이점들을 정리해보겠습니다.
1. 키(Key)란?
릴레이션(테이블)에서 튜플을 식별하거나, 테이블 간 연결을 위해 사용하는 속성(Attribute)들의 집합
2. 키의 종류
키 종류 | 설명 |
후보키(Candidate Key) | 튜플을 유일하게 식별할 수 있는 속성 집합 (유일성 + 최소성 만족) |
기본키(Primary Key) | 후보키 중 실제로 테이블에서 선택한 주 식별자 (NOT NULL, UNIQUE 필수) |
슈퍼키(Super Key) | 유일성은 만족하되, 최소성은 만족하지 않는 키 (후보키 + 추가 속성) |
외래키(Foreign Key) | 다른 테이블의 기본키를 참조하는 키 (테이블 간 관계 설정용) |
대체키(Alternate Key) | 후보키 중 기본키로 선택되지 않은 나머지 키들 |
3. 예시 테이블
customer_id | name | |
1 | 홍길동 | hong@email.com |
2 | 이몽룡 | lee@email.com |
- 후보키: customer_id, email
(둘 다 유일성 + 최소성 만족) - 기본키: customer_id (선택된 후보키)
- 대체키: email (후보키지만 기본키로 선택되지 않음)
- 슈퍼키: customer_id, customer_id + name, email 등 유일하지만 최소성은 아님
- 외래키: 다른 테이블(Order.customer_id)이 이 customer_id를 참조함
✔️ 후보키: 유일한 후보들
✔️ 기본키: 대표로 선택된 키
✔️ 외래키: 다른 테이블과 연결하는 브릿지
→ 정확한 키 설계는 데이터 무결성과 관계 표현의 핵심입니다.
반응형
LIST
'정보처리기사 > 2장 데이터 입출력 구현' 카테고리의 다른 글
관계대수 완전 정리 (0) | 2025.04.12 |
---|---|
무결성과 제약조건 완전 정리 (0) | 2025.04.12 |
릴레이션 모델의 구성 요소 완전 정복 (0) | 2025.04.12 |
데이터 모델과 E-R 다이어그램 완전 정리 (0) | 2025.04.12 |
데이터베이스 설계 절차 (0) | 2025.04.12 |