Kakšna je razlika med 3NF in BCNF - Razlika Med

Kakšna je razlika med 3NF in BCNF

The glavna razlika med 3NF in BCNF je to tabela naj bo v 2nd normalna oblika in ne bi smelo biti nobenih prehodnih odvisnosti, ki bi zadovoljile 3NF, medtem ko primarni atributi tabele ne bi smeli biti odvisni od ne-glavnih atributov tabele za zadovoljitev BCNF.

Redundanca podatkov se nanaša na iste podatke, ki se ponavljajo na več mestih. Prav tako lahko povzroči težave pri vstavljanju, posodabljanju in brisanju podatkov. Normalizacija je proces organiziranja podatkov v več povezanih tabel, da bi zmanjšali redundanco podatkov. Zagotavlja rešitev za redundanco podatkov, saj podatke razdeli v tabelo v več tabel. Vendar pa ni mogoče popolnoma odpraviti redundance podatkov; možno je le zmanjšati redundanco podatkov. Obstajajo različne vrste normalizacije, kot so 1NF, 2nf, 3NF, BCNF, itd. Pred razpravo o 3NF in BCNF je potrebno razumeti 1NF in 2NF.

Pokrita ključna območja

1. Kaj je 1NF
- Opredelitev, funkcionalnost
2. Kaj je 2NF
- Opredelitev, funkcionalnost
3. Kaj je 3NF
- Opredelitev, funkcionalnost
4. Kaj je BCNF
- Opredelitev, funkcionalnost
5. Kakšna je razlika med 3NF in BCNF
- Primerjava ključnih razlik

Ključni pogoji

1NF, 2NF, 3NF, BCNF, Normalizacija


Kaj je 1NF

Obstajajo štiri pravila, ki omogočajo, da tabela izpolnjuje 1NF. So naslednji.

  • Vsak stolpec v tabeli mora imeti samodejne vrednosti.
  • Stolpec mora imeti podatke iste vrste.
  • Vsak stolpec mora imeti edinstveno ime.
  • Vrstni red shranjevanja podatkov ni pomemben.

Če tabela ni v 1st normalno obliko, se šteje za slabo zasnovo baze podatkov. Primer je naslednji.


V zgornji tabeli vsebuje stolpec z vsebino več vrednosti. Po izvedbi 1NF je tabela naslednja. 


Kaj je 2NF

Obstajata dve pravili, da naredite tabelo zadovoljivo 2NF. So naslednji.

  • Tabela mora biti v obrazcu 1NF.
  • Ne bi smelo biti delnih odvisnosti.

V tabeli, v kateri so shranjene informacije o študentih, je ID študenta primarni ključ in pomaga ločeno določiti vsako vrstico v tabeli. Drugi stolpci so odvisni od primarnega ključa. Ta odvisnost se imenuje funkcionalna odvisnost.

Na primer, predpostavimo, da je tabela imenovana rezultat. Primarni ključ je kombinacija ID-ja študenta in ID-ja predmeta. Če ima ta tabela ime predavatelja, je odvisna le od id osebe. Takšna odvisnost se imenuje delna odvisnost.

Primer je naslednji. 


Primarni ključ zgornje tabele je kombinacija student_id in subject_id. Ime lecturer_name lahko postavimo v ločeno tabelo. Zdaj so tabele rezultatov, predmet in predavatelji naslednje.


Kaj je 3NF

Obstajata dve pravili, da naredimo tabelo 2nf. So naslednji.

  • Tabela mora ustrezati 2nd normalno obliko.
  • Ne bi smela imeti prehodnega.


Na primer, predpostavimo, da ima tabela rezultatov študent_id, predmet_sredstva, oznake, ime_izpraševanja in skupne oznake. Kombinacija student_id in subject_id je primarni ključ. Ta oznaka total_mark ni odvisna od tega primarnega ključa. To je odvisno od imena exam_name. Z drugimi besedami, atribut je odvisen od atributa, ki ni glavni. Takšna odvisnost se imenuje prehodna odvisnost. Zato lahko v ločeni tabeli ocenimo ime izpita in skupno število.


Kaj je BCNF

BCNF pomeni Boyce-Codd-Normal Form. Izogiba se primarnim atributom, ki so odvisni od atributov, ki niso glavni. Primer je naslednji.


Primarni ključ zgornje tabele je kombinacija študentov in predmeta. Ker en predavatelj predava določeno temo, lahko tudi ta stolpec uporabimo za identifikacijo vsakega zapisa. Kljub temu predavatelj ni ključni ključ. Predmetni stolpec je odvisen od predavatelja, ki ni glavni atribut. Zato tabela ne izpolnjuje BCNF. Ustvarjamo tabelo učiteljev in predavateljsko mizo, kot sledi.


Razlika med 3NF in BCNF

Opredelitev

3NF je normalna oblika, ki se uporablja pri normalizaciji zasnove baze podatkov za zmanjšanje podvajanja podatkov in zagotavljanje referenčne celovitosti z zagotavljanjem, da je entiteta v drugi normalni obliki in da so vsi atributi v tabeli določeni samo s ključi kandidatov tega odnosa. in ne z nobenimi neprimernimi atributi. BCNF pa je normalna oblika, ki se uporablja pri normalizaciji baze podatkov, kar je nekoliko močnejša različica 3NF. Torej je to glavna razlika med 3NF in BCNF.

Funkcionalnost

Tabela mora biti v 2nd normalna oblika, in ne bi smelo biti nobenih prehodnih odvisnosti, ki bi zadovoljile 3NF, medtem ko primarni atributi tabele ne bi smeli biti odvisni od ne-glavnih atributov tabele za zadovoljitev BCNF. Zato je funkcionalnost še ena razlika med 3NF in BCNF.

Zaključek

Na kratko, normalizirana baza podatkov se šteje za dobro bazo podatkov. Obstajajo različne vrste normalizacije, dve pa sta 3NF in BCNF. Glavna razlika med 3NF in BCNF je, da mora biti tabela v 2nd normalna oblika in ne bi smelo biti nobenih prehodnih odvisnosti, ki bi zadovoljile 3NF, medtem ko primarni atributi tabele ne bi smeli biti odvisni od ne-glavnih atributov tabele za zadovoljitev BCNF.

Sklic:

1. Prva normalna oblika (1NF) | Normalizacija baz podatkov | DBMS, Studytonight, 24. december 2017,