제3정규형

위키백과, 우리 모두의 백과사전.

제3 정규형이란 데이터베이스 정규화의 세 번째 단계로, 다음 조건을 만족해야 한다:

  1. 테이블이 제2 정규형을 만족하고,
  2. 테이블 내의 키가 아닌 모든 컬럼이 테이블의 모든 키에 이행적 종속이 되지 않는다.

즉 제3 정규형은 추이 종속이 존재하지 않음을 요구한다.

제3정규형 정의[편집]

제3정규형은 데이터베이스 정규화에서 정규형으로 사용된다. 3NF는 E.F Codd에 의해서 1971년 정의되었다.

Codd는 3NF 테이블의 상태정의로 아래와 같은 필요충분 조건을 정의했다.

  • 릴레이션 R (테이블)은 제2정규형이다.
  • 릴레이션 R의 키가 아닌 모든 컬럼이 릴레이션 R의 모든 키에 이행적 종속이 되지 않는다.

이행적 함수종속은 기능적 종속으로 X Y 이고 Y Z 에 의해서 X Z (X가 Z를 결정한다) 가 되는 것이다.

예제[편집]

대회 우승자
대회 연도 우승자 우승자 생년 월일
Des Moines Masters 1998 Chip Masterson 14 March 1977
Indiana Invitational 1998 Al Fredrickson 21 July 1975
Cleveland Open 1999 Bob Albertson 28 September 1968
Des Moines Masters 1999 Al Fredrickson 21 July 1975
Indiana Invitational 1999 Chip Masterson 14 March 1977

이 테이블은 2NF이지만 3NF는 아니다. 이것을 3NF로 변형하면 다음과 같다:

대회 우승자
대회 연도 우승자
Des Moines Masters 1998 Chip Masterson
Indiana Invitational 1998 Al Fredrickson
Cleveland Open 1999 Bob Albertson
Des Moines Masters 1999 Al Fredrickson
Indiana Invitational 1999 Chip Masterson
우승자 생년 월일
우승자 우승자 생년 월일
Chip Masterson 14 March 1977
Al Fredrickson 21 July 1975
Bob Albertson 28 September 1968

참고 문헌[편집]