-
- 데이터의 중복과 중복으로 인한 이상(Anomaly)을 최소한으로 줄이기 위한 방법
- 이상(Anomaly)
- 삽입 이상(Insertion Anomaly) : 튜플 삽입시 불필요한 데이터가 함께 삽입되거나 데이터가 부족해 삽입이 되지 않는 현상
- 갱신 이상(Modification Anomaly) : 중복 튜플 중 일부만 변경되어 데이터가 불일치가 발생하는 현상
- 삭제 이상(Deletion Anomaly) : 튜플 삭제시 원치 않는 튜플도 함께 삭제되어 데이터 손실이 발생하는 현상
제1정규형(1NF: First Normal Form)
- 모든 애트리뷰트의 도메인은 원자값만을 가져야함
제2정규형(2NF: Second Normal Form)
- 제1정규형을 만족해야함
- 모든 애트리뷰트들에 부분적 함수 의존성이 없어야함(완전 함수적 종속이여야함)
완전 함수적 종속성
- X -> Y 라 가정
- X의 어떠한 애트리뷰트라도 제가하면 함수적 종속성이 만족 안함
- 즉, Y가 X의 부분집합에 종속하지 않아야함
제3정규형(2NF: Third Normal Form)
- 제1, 2정규형을 만족해야함
- 이행적 종속성을 제거해야함
이행적 종속성
- A -> B, B -> C 가 성립하고 A -> C 가 성립되는 함수 종속성
BCNF 정규형
- 제1, 2, 3 정규형을 만족해야함
- 모든 결정자가 후보키여야함
정규화의 장점
- 데이터의 중복과 이상현상을 제거할 수 있음
- DB구조 확장시 구조의 변화의 영향이 적음
단점