중복을 최소화하도록 데이터를 구조화하는 프로세스
가능한 한 중복을 제거하여 삽입, 삭제, 갱신 이상(Anomaly)의 발생 가능성을 줄이는 것
테이블에 속한 모든 속성의 도메인이 원자 값만으로 되어 있는 정규형
= 모든 컬럼 값이 1개씩만 있어야 한다
제 1정규형이고, 기본키가 아닌 모든 속성이 기본키에 대하여 완전 함수적 종속을 만족하는 정규형
제품번호 속성과 주소 속성이 다른 테이블의 속성이 되도록 테이블을 분해하여 만족할 수 있다.
제 2정규형이고 기본키가 아닌 모든 속성이 기본키에 대해 이행적 함수적 종속을 만족하지 않는 정규형
(주문번호 | 고객번호 | 주소) 구조의 테이블을 (주문번호 | 고객번호), (고객번호 | 주소)로 분리하여 제 3정규형을 만들 수 있다.
모든 결정자가 후보키인 경우
<수강_교수> 테이블에서 BCNF를 만족하지 못하게 하는 속성 (담당교수 -> 과목명)을 분리하여 BCNF 를 만들 수 있다.
테이블에 다중값 종속 A↠B가 존재할 경우 R의 모든 속성이 A에 함수적 종속 관계를 만족하는 정규형
테이블의 모든 조인 종속이 R의 후보키를 통해서만 성립되는 정규형