Skip to content

Latest commit

 

History

History
24 lines (24 loc) · 1.4 KB

정규화.md

File metadata and controls

24 lines (24 loc) · 1.4 KB

정규화

테이블 간의 중복을 최소화하기 위해 실행하는 작업

정규화의 이유

중복된 데이터 제거를 함으로써 데이터의 무결성을 유지하고, DB의 저장 용량 최소화하기 위해

제 1 정규화

테이블의 컬럼이 원자값(하나의 값)을 갖도록 테이블을 분해하는 것

image

제 2 정규화

제 1 정규형을 만족한 테이블에 대해 완전 함수 종속을 만족하도록 테이블을 분해하는 것

완전 함수 종속: 기본키의 부분집합이 결정자가 되지 않는 것

image

제 3 정규화

제 2 정규형을 만족한 테이블에 대해 이행적 종속을 없애도록 테이블을 분해하는 것

이행적 종속: A → B, B → C 일 때, A → C가 되는 것

image

BCNF 정규화

제 3 정규형을 만족한 테이블에 대해 결정자가 후보키가 되도록 테이블을 분해하는 것

image