정규화(Normalization)-1,2,3차

youngkyu MIn·2023년 9월 6일

1 정규형 ( Atomic columns - 컬럼이 원자값을 가져야한다. )

이름나이학년좋아하는 음식
홍길동19고3국밥
홍길순17고1떡볶이, 마라탕

좋아하는 음식 컬럼을 보면 홍길순은 떡볶이, 마라탕 두개의 값을 가지고 있다.
Atomic columns 룰을 위배한다.


2 정규형 ( No partial dependencies - 부분 종속성이 없어야한다.)
이름나이학년좋아하는 음식
홍길동19고3국밥
홍길순17고1떡볶이
홍길순17고1마라탕

나이, 학년 의 중복이 보인다.
나이와 학년이 이름에만 종속되어있기 때문이다. ( 이름만 알면 나이와 학년도 알 수 있다 )
No partial dependencies 룰을 위반했다.

위의 테이블은 이름과 좋아하는 음식을 위한 테이블이어야 한다.

이름나이학년
홍길동19고3
홍길순17고1

나이와 학년을 따로 빼오니 홍길순의 나이와 학년이 두번나오는 일이 없어졌다.

3정규형 ( No transitive dependencies - 이행적 종속성이 없어야한다. )

이름나이학년
홍길동19고3
홍길순17고1

나이는 이름에 의존하고 있고 학년은 나이에 의존하고 있다. 이행적 종속성을 가지고있다.
No transitive dependecies 룰을 위반한다.

이름나이
홍길동19
홍길순17

나이학년
19고3
17고1
profile
한 줄 소개

0개의 댓글