<aside> 💡

테이블 간의 데이터 중복을 허용하지 않는것이 목표, 데이터의 일관성, 최소한의 데이터 중복, 최대한의 데이터 유연성을 위한 방법으로 속성들끼리의 종속 관계를 분석하여 여러개의 관계로 데이터를 분해하는 것이다.

</aside>

1. 정규화의 목적

1-1. 이상현상(Anomaly)이란?

테이블 내의 데이터들이 불필요하게 중복되어 있어 테이블을 조작할 때 발생되는 데이터 불일치 현상을 의미한다. 크게 삽입, 삭제, 수정 이상이 존재하며 이는 정규화를 통해 해결 가능하다.


2. 정규화 과정

<aside> 💡

비정규형 → 1정규화 → 1정규형 → 2정규화 → 2정규형 → 3정규화 → 3정규형 → BC → BCNF → 4정규화 → 4정규형 → 5정규화 → 5정규형

</aside>

2-1. 제 1 정규화 (First Normal Form, 1NF)

테이블의 컬럼이 원자값(Atomic Value, 하나의 값)을 갖도록 테이블을 분해하는 방식

학생번호 이름 학년 좋아하는 과목
1 A 1 국어
2 B 1 영어, 수학
3 C 1 수학
4 D 2 수학, 과학
5 E 2 사회