Jeunwork space

시나공 정보처리기사 실기 - 정규화 본문

정보처리기사 실기

시나공 정보처리기사 실기 - 정규화

jeunwork 2021. 6. 8. 19:29

정규화

- 테이블의 속성들이 상호 종속적인 관계를 갖는 특성을 이용하여 테이블을 무손실 분해하는 과정

※ 무손실 분해 

 데이터의 손실 없이 분해하는 것

 

- 목적: 가능한 한 중복을 제거하여 삽입, 삭제, 갱신 이상의 발생 가능성을 줄이는 것

- 정규화 과정 : 뒤로 갈수록 정규화의 정도가 높아짐 

정규화 과정 

 

제1정규형

- 테이블의 모든 속성 값이 원자만으로 되어있는 정규형

 

제2정규형

- 테이블이 제1정규형을 만족하고, 기본키가 아닌 모든 속성이 기본키에 대하여 완전 함수적 종속을 만족하는 정규형

 

제3정규형

- 테이블이 제2정규형을 만족하고, 기본키가 아닌 모든 속성이 기본키에 대하여 이행적 함수적 종속을 만족하지 않는 정규형

ex) A → B → C

A에 B가, B에 C가 종속되어 있을때, C는 A에 이행적 종속되어있다.

A → B테이블과, B → C 테이블로 분리할 수 있다.


BCNF

- 테이블에서 모든 결정자가 후보키인 정규형

- 일반적으로 제 3정규형에 후보키가 여러 개 존재하고, 이러한 후보키들이 서로 중첩되어 나타나는 경우에 적용 가능

 

제4정규형

- 테이블에 다중 값 종속(MVD: 다치 종속) A → B 일때(하나의 결정자 A에 여러개의 종속자가 존재할 경우) 테이블의 모든 속성이 A에 함수적 종속 관계를 만족하는 정규형

 

제5정규형

- 테이블의 모든 조인 종속이 테이블의 후보키를 통해서만 성립되는 정규형

 

 

Comments