정규화(Normalization)는 데이터의 중복을 최소화하고,
삽입·삭제·갱신 시 발생할 수 있는 이상현상(Anomaly)을 방지하기 위한
데이터베이스 설계 기법이다.
정규화는 데이터의 무결성, 일관성, 안정성을 보장하며,
정보처리기사나 SQL 인터뷰에서도 자주 등장한다.
https://time-memorizer.tistory.com/273
정규화란? 제1정규형부터 제3정규형까지 쉽게 정리
**정규화(Normalization)**란 데이터베이스에서 중복을 제거하고 논리적으로 데이터를 정리하는 과정이다.정규화는 관계형 데이터베이스 설계의 기본이며, 실무와 정보처리기사 시험 모두에서 필수
time-memorizer.tistory.com
✅ 1NF (제1정규형) – 원자값만 저장
- 테이블의 모든 속성 값은 분해할 수 없는 원자값이어야 한다.
- 한 셀에 여러 개의 값이 있으면 안 된다.
- 반복 속성 제거가 목적이다.
예시:
이름 | 전화번호 |
홍길동 | 010-1234, 010-5678 ← ❌ |
→ 분리 후 | |
이름 | 전화번호 |
------ | ---------------- |
홍길동 | 010-1234 |
홍길동 | 010-5678 |
✅ 2NF (제2정규형) – 부분 함수 종속 제거
- 기본키의 일부분에만 종속되는 컬럼 제거
- 기본키 전체에 종속되어야 한다.
예시:
학번 | 과목 | 교수이름 |
1 | 수학 | 김교수 |
1 | 영어 | 이교수 |
→ 교수이름은 과목에만 종속 → 분리 필요
✅ 3NF (제3정규형) – 이행 함수 종속 제거
- 기본키를 거치지 않고 비주요 속성이 다른 비주요 속성에 종속되면 안 된다.
- 중복 정보 제거 및 갱신 이상 방지
예시:
| 학번 | 학과코드 | 학과이름 |
→ 학과이름이 학과코드에 종속 → 분리 필요
✅ BCNF – 결정자이지만 후보키가 아닌 속성 제거
- 3NF보다 강화된 정규형
- 결정자가 후보키가 아닌 경우 분리
예시:
- 학과명 → 교수
- 학과명이 후보키가 아니라면 분리해야 함
✅ 4NF – 다치 종속 제거
- 하나의 기본키에 여러 개의 속성이 독립적으로 종속되는 경우
- 다치 종속이 발생하면 테이블 분리
예시:
| 학생 | 과목 | 동아리 |
→ 과목과 동아리가 서로 독립 → 다치 종속 → 분리 필요
✅ 5NF – 조인 종속 제거
- 조인된 테이블이 정보 손실 없이 복원 가능해야 함
- 조인 시 정보가 손실되거나 중복되면 5NF를 위반한 것
💡 마무리 정리
정규형 | 주요 개념 |
1NF | 원자값 유지 |
2NF | 부분 종속 제거 |
3NF | 이행 종속 제거 |
BCNF | 후보키가 아닌 결정자 제거 |
4NF | 다치 종속 제거 |
5NF | 조인 종속 제거 |
정규화를 통해 테이블의 설계 품질이 향상되며,
데이터 중복 감소, 이상현상 방지, 쿼리 성능 향상에 도움이 된다.
https://time-memorizer.tistory.com/273
정규화란? 제1정규형부터 제3정규형까지 쉽게 정리
**정규화(Normalization)**란 데이터베이스에서 중복을 제거하고 논리적으로 데이터를 정리하는 과정이다.정규화는 관계형 데이터베이스 설계의 기본이며, 실무와 정보처리기사 시험 모두에서 필수
time-memorizer.tistory.com
📌 매일 간단히 IT 관련 개념을 익히고 싶다면 구독하세요!👇👇👇
http://www.youtube.com/@itbite_daily
오늘의 IT한입
👋 하루 한 입, 쉽게 배우는 IT & 개발 개념! 프로그래밍, 데이터베이스, 운영체제, 네트워크, 보안, 코딩테스트까지! 취업 준비부터 실무 감각까지 매일 짧고 강력하게 정리해드립니다. 📍 매일
www.youtube.com
'IT개발 > Tech Notes' 카테고리의 다른 글
소프트웨어 생명 주기란? 개발 단계 전체 흐름 완전 정리!(정보처리기사 1과목 : 소프트웨어 설계) (0) | 2025.05.16 |
---|---|
트랜잭션 회복 기법: Undo, Redo, Checkpoint 개념과 차이 (1) | 2025.05.15 |
논리 연산자 AND, OR, NOT부터 XOR까지, 기초 개념 완전 정리! (0) | 2025.05.13 |
내부 단편화 vs 외부 단편화, 메모리 낭비를 일으키는 진짜 원인! (1) | 2025.05.09 |
FIFO, LRU, OPT? 페이지 교체 알고리즘 완벽 비교 정리! (0) | 2025.05.09 |
댓글