Razlika med BCNF in 3NF

BCNF proti 3NF

Običajna oblika Boyce Codd (znana tudi kot BCNF) je normalna oblika - to je oblika, ki zagotavlja merila za določitev stopnje ranljivosti tabele na logične nedoslednosti in nepravilnosti. Ta običajna oblika se uporablja pri normalizaciji podatkovnih baz. Je nekoliko močnejša od svoje predhodnice, tretje normalne oblike (poznane tudi pod imenom 3NF). Šteje se, da je tabela v BCNF, če in le, če je za vsakega, če so njegove ne trivialne funkcionalne odvisnosti - to je meja, ki je postavljena med dvema nizoma atributov v odnosu, vzetem iz baze podatkov - superkey (nabor atributi relacijske spremenljivke, ki postulira, da v vseh odnosih, dodeljenih tej določeni spremenljivki, ni dveh ločenih vrstic, ki vsebujeta isto vrednost za atribute v tem določenem nizu). BCNF postulira, da je vsaka tabela, ki ne izpolnjuje meril, ki bi jih bilo mogoče pripisati BNCF, podvržena logičnim neskladjem.

3NF je normalna oblika, ki se uporablja tudi pri normalizaciji podatkovnih baz. Mislimo, da je tabela v 3NF, če in samo, če je 1) tabela v drugi normalni obliki (ali 2NF, ki je prva normalna koda, ali 1NF, ki izpolnjuje pogoje, da postane 2NF), in 2) vsak neprimerni atribut tabele je neprehodno odvisen od vsakega ključa tabele (kar pomeni, da ni neposredno odvisen od vsake tipke). Obstaja še en postulat 3NF, ki se uporablja tudi za določanje razlik med 3NF in BCNF.

Ta izrek je zasnoval Carlo Zaniolo leta 1982. Navaja, da je tabela v 3NF, če in samo, če mora biti za vsako funkcionalno odvisnost, kjer je X â † A, izpolnjen vsaj eden od treh pogojev: bodisi X â † 'A, X je superkey ali A je glavni atribut (kar pomeni, da je A vsebovan znotraj kandidatnega ključa - ali minimalni superkey za to razmerje). Ta novejša opredelitev se od teorema BCNF razlikuje po tem, da bi slednji model preprosto odpravil zadnji pogoj. Čeprav deluje kot novejša različica teorema 3NF, obstaja izrek teorema Zaniolo. Navaja, da je X â † 'A ne-trivialno. Če je to res, naj bo A atribut noon-key in naj bo Y tudi ključ R. Če to drži, je Y † X. To pomeni, da A ni prehodno odvisen od Y, če in samo, če je X â † "Y (ali če je X superkey.

Povzetek:

1. BCNF je normalna oblika, v kateri je za vsakega od trivialnih funkcionalnih odvisnosti tabele supervešče; 3NF je normalna oblika, v kateri je tabela v 2NF, in vsak atribut, ki ni primeren, je neprehodno odvisen od vsake tipke v tabeli.