Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

제3정규형(3NF)

<시간/>

3NF란 무엇입니까?

정규화의 세 번째 단계는 3NF입니다.

관계가 2NF에 있고 전이 기능 종속성이 없는 경우에만 테이블이 3NF에 있습니다.

예를 들어 보겠습니다 -

예(테이블이 3NF를 위반함)

<영화 목록>

영화_ID
목록_ID
목록 유형
DVD_가격 ($)
0089
007
코미디
100
0090
003
액션
150
0091
007
코미디
100


위의 표는 이행적 기능 종속성을 가지고 있기 때문에 3NF에 없습니다 -

영화_ID -> 목록_ID
Listing_ID -> Listing_Type

따라서 Movie_ID -> Listing_Type 즉, 이행적 기능 종속성.

예(3NF로 변환한 표)

3NF로 구성하려면 테이블을 분할하고 이행적 기능 종속성을 제거해야 합니다.

<영화>

영화_ID
목록_ID
DVD_가격 ($)
0089
007
100
0090
003
150
0091
007
100

<목록>

목록_ID
목록 유형
007
코미디
003
액션
007
코미디

이제 3NF의 테이블인 결과를 다시 보자 -

제3정규형(3NF)