정규화
이상현상(삽입,삭제,정렬시)의 제거
릴레이션 분해
함수종속의 유지
완전함수 종속, 부분함수 종속, 이행함수 종속이 있다.
부분함수 종속을 해결하는것이 2정규화.
이행함수 종속을 해결하는것이 3정규화.
릴레이션의 모든 속성을 후보키로 만드는것을 보이스코드 정규화.
릴레이션에서 다치 종속 관계가 성립하는 경우 4정규화
릴레이션에서 조인 종속이 성립하는 경우 5정규화
릴레이션에서 이상 현상이 발생할 수 있는 함수 종속관계를 제거하기 위하여, 릴레이션을 분해하는 작업.
함수 종속 관계
X -> Y : Y는 X에 완전 함수적 종속 되어있다.
X : 결정자이자 기본키라고 한다.
Y : X의 종속자
한 테이블 내에서 기본키가 A, B(복합키)일때, C는 A, B에 종속 되어있으나, D는 B에만 종속되어 있을때, D를 부분함수 종속이라고 한다.
R(A,B,C,D)는 제2 정규화가 필요하다.
정규화 후에는 R1(A,B,C,) ,R2(B,D)로 나누어진다.
B는 R1의 외래키, R2의 기본키로 작동한다.
한 테이블 내에서 A->B, B->C일때 A->C를 결정할 수 있게 되면 이행함수 종속관계라고 한다.
R(A,B,C)는 제 3정규화가 필요하다.
정규화 후에는 R1(A,B), R2(B,C) 로 나눈다. 이유는, A가 B를 결정하는데 B가 외래키 이므로 A에 의해 C도 결정된다고 논리적으로 이해할 수
있기 때문이다. R1(A,B) R2(A.C)는 이런 논리적인 연결이 불가능하므로 안된다.
학번->(성명,학과,학년) X->Y 의 예
기본키는 릴레이션의 속성명에 밑줄이 쳐져 있다.
'프로그래밍 > ---DBMS---' 카테고리의 다른 글
관계 데이터 연산 (0) | 2018.09.29 |
---|---|
DB 용어 정리 DDL DML DCL TCL (30) | 2018.05.24 |