>데이터 베이스 >MySQL 튜토리얼 >BCNF(보이스 코드 정규 형식)

BCNF(보이스 코드 정규 형식)

WBOY
WBOY앞으로
2023-09-04 20:49:021294검색

博伊斯-科德范式 (BCNF)

BCNF는 제3정규형(3NF)의 확장이며 3NF보다 약간 더 강력합니다.

P -> Q가 사소한 함수 종속이고 P가 R의 수퍼키인 경우 관계 R은 BCNF에 속합니다.

관계가 BCNF에 있는 경우 기능적 종속성을 기반으로 한 중복이 제거되었지만 일부 중복이 여전히 존재한다는 의미입니다.

예제를 살펴보겠습니다 -

Ground

Begin_Time

End_Time

Package

G01

07:00

09:00

Golden

G01

10:00

12:00

골드

G01

10:30

11:00

Bronze

G02

10:15

11:15

실버

G02

08:00

09:00

실버

위의 관계는 1NF, 2NF, 3NF에 있지만 BCNF에는 없습니다. . 이유는 다음과 같습니다.

기능적 종속성

{Package->Ground}

Ground가 의존하는 패키지는 후보 키도 아니고 후보 키의 상위 집합도 아니라는 결정적인 속성을 갖습니다.

G0 1 G02G01
Package

Ground

실버

브론즈

Ground

Begin_Time

End_Time

G01

07:00

09: 00

G01

10:00

12:00

G01

10:30

11:00

G02

10:15

11:15

G02

08:00

09:00

이제 위의 표는 BCNF 형식 .

테이블의 후보 키는 Package 및 Ground

입니다. 테이블의 후보 키는 {Ground, Begin_Time} {Ground, End_Time}

입니다. 관계.

위 내용은 BCNF(보이스 코드 정규 형식)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제