Qhov txawv ntawm 3NF thiab BCNF

Qhov txawv ntawm 3NF thiab BCNF
Qhov txawv ntawm 3NF thiab BCNF

Video: Qhov txawv ntawm 3NF thiab BCNF

Video: Qhov txawv ntawm 3NF thiab BCNF
Video: Ua tsaug rau neb ob leeg 2024, Lub Xya hli ntuj
Anonim

3NF vs BCNF

Normalization yog txheej txheem uas tau ua los txo qis qhov rov ua dua uas muaj nyob hauv cov ntaub ntawv hauv cov ntaub ntawv sib raug zoo. Cov txheej txheem no feem ntau yuav faib cov rooj loj rau hauv cov rooj me me nrog tsawg dua redundancy. Cov rooj me me no yuav muaj feem cuam tshuam rau ib leeg los ntawm kev sib raug zoo. Hauv cov ntaub ntawv zoo li qub, kev hloov pauv lossis hloov kho hauv cov ntaub ntawv yuav xav tau hloov kho ib lub rooj xwb. Daim Ntawv Thib Peb (3NF) tau tshaj tawm hauv xyoo 1971 los ntawm Edgar F. Codd, uas kuj yog tus tsim qauv ntawm kev sib raug zoo thiab lub tswv yim ntawm normalization. Boyce-Codd Normal Form (BCNF) tau tshaj tawm xyoo 1974 los ntawm Codd thiab Raymond F. Boyce.

3NF yog dab tsi?

3NF yog daim ntawv thib peb siv hauv kev sib raug zoo database normalization. Raws li Codd lub ntsiab lus, ib lub rooj tau hais tias yog nyob rau hauv 3NF, yog tias thiab tsuas yog, lub rooj ntawd nyob rau hauv daim ntawv thib ob (2NF), thiab txhua tus cwj pwm hauv lub rooj uas tsis yog tus neeg sib tw tus yuam sij yuav tsum ncaj qha nyob ntawm seb txhua tus neeg sib tw tus yuam sij ntawm lub rooj ntawd. Xyoo 1982 Carlo Zaniolo tau tsim ib qho kev qhia txawv rau 3NF. Cov rooj uas ua raws li 3NF feem ntau tsis muaj qhov tsis txaus ntseeg uas tshwm sim thaum ntxig, tshem tawm lossis hloov kho cov ntaub ntawv hauv lub rooj.

BCNF yog dab tsi?

BCNF (tseem hu ua 3.5NF) yog lwm daim ntawv ib txwm siv hauv kev sib raug zoo database normalization. Nws tau qhia txog kev ntes qee qhov tsis txaus ntseeg uas tsis tau hais los ntawm 3NF. Ib lub rooj tau hais tias yog nyob rau hauv BCNF, yog tias thiab tsuas yog, rau txhua qhov kev vam khom ntawm daim ntawv A → B uas tsis yog qhov tseem ceeb, A yog qhov tseem ceeb heev. Decomposing ib lub rooj uas tsis nyob rau hauv BCNF ib txwm daim ntawv yuav tsis lav lub zus tau tej cov ntxhuav nyob rau hauv daim ntawv BCNF (thaum khaws cia cov dependencies uas muaj nyob rau hauv thawj lub rooj).

Qhov txawv ntawm 3NF thiab BCNF yog dab tsi?

Ob leeg 3NF thiab BCNF yog cov ntaub ntawv ib txwm siv hauv cov ntaub ntawv sib raug zoo kom txo qis kev rov ua dua hauv cov ntxhuav. Nyob rau hauv ib lub rooj uas yog nyob rau hauv BCNF ib txwm daim ntawv, rau txhua txhua yam tsis tseem ceeb functional dependency ntawm daim ntawv A → B, A yog ib tug super-key whereas, ib lub rooj uas ua raws li 3NF yuav tsum nyob rau hauv 2NF, thiab txhua yam uas tsis yog-prime. tus cwj pwm yuav tsum ncaj qha nyob ntawm txhua tus neeg sib tw tus yuam sij ntawm lub rooj ntawd. BCNF raug suav hais tias yog daim ntawv muaj zog dua li 3NF thiab nws tau tsim los ntes qee qhov tsis xws luag uas tsis tuaj yeem ntes tau los ntawm 3NF. Tau txais ib lub rooj uas ua raws li daim ntawv BCNF yuav tsum tau decomposing ib lub rooj uas nyob rau hauv 3NF. Qhov kev puas tsuaj no yuav ua rau muaj kev koom tes ntxiv (lossis Cartesian cov khoom) thaum ua cov lus nug. Qhov no yuav ua rau kom lub sijhawm suav. Ntawm qhov tod tes, cov rooj uas ua raws li BCNF yuav muaj tsawg dua cov rooj uas tsuas yog ua raws li 3NF. Tsis tas li ntawd, feem ntau ntawm cov sij hawm, nws muaj peev xwm tau txais ib lub rooj uas ua raws li 3NF yam tsis muaj kev cuam tshuam rau kev khaws cia thiab tsis muaj kev koom nrog. Tab sis qhov no tsis yog ib txwm ua tau nrog BCNF.

Pom zoo: