Boyce-Codd Normal Form mērķis ir palielināt datu integritāti, organizējot relāciju datu bāzes kolonnas un tabulas, lai panāktu datu bāzes normalizēšanu. Datu bāzes normalizēšana notiek, ja ir izveidotas attiecības starp tabulām un kad tabulās ir definēti noteikumi, lai padarītu datu bāzi elastīgāku un saglabātu datus.
Datu bāzes normalizācijas mērķi ir novērst liekos datus un nodrošināt, ka datu atkarības ir jēgpilnas. Datubāze tiek normalizēta, ja vieni un tie paši dati netiek saglabāti vairāk nekā vienā tabulā un ja tabulā tiek saglabāti tikai saistītie dati.
Boisa-Koda parastās formas izcelsme
Ievērojot virkni vadlīniju, nodrošiniet datubāzu normalizēšanu. Šīs vadlīnijas tiek sauktas par parastajām veidlapām, un tās ir numurētas no viena līdz piecām. Relāciju datu bāze tiek raksturota kā normalizēta, ja tā atbilst pirmajām trim formām: 1NF, 2NF un 3NF.
BCNF kā trešās parastās formas jeb 3NF paplašinājumu 1974. gadā izveidoja Raimonds Boiss un Edgars Kods. Vīrieši strādāja, lai izveidotu datu bāzu shēmas, kas samazinātu atlaišanu ar mērķi samazināt skaitļošanas laiku. Trešā parastā forma noņem kolonnas, kas nav atkarīgas no primārās atslēgas, kā arī atbilst pirmās un otrās parastās formas vadlīnijām. BCNF, ko dažreiz dēvē par 3.5NF, atbilst visām 3NF prasībām un pieprasa, lai kandidāta atslēgas nebūtu atkarīgas no citiem tabulas atribūtiem.
BCNF izveides laikā Boiss bija viens no galvenajiem strukturētās angļu vaicājumu valodas izstrādātājiem, kas vēlāk tika standartizēta kā SQL, kas uzlaboja datu izguvi, izmantojot Codd relāciju modeli. Šajā modelī Codd norādīja, ka datu bāzu strukturālo sarežģītību var samazināt, kas nozīmēja, ka vaicājumi varētu būt efektīvāki un elastīgāki.
Izmantojot savus relāciju datubāzes ieskatus, Kods definēja 1NF, 2NF un 3NF vadlīnijas. Viņš sadarbojās ar Boisu, lai definētu BCNF.
Kandidātu atslēgas un BCNF
Kandidāta atslēga ir tabulas kolonna vai kolonnu kombinācija, kas veido unikālu atslēgu datu bāzē. Atribūtu kombinācija identificē datu bāzes ierakstu, neatsaucoties uz citiem datiem. Katrā tabulā var būt vairākas kandidātatslēgas, no kurām jebkura var kvalificēties kā primārā atslēga. Tabulā ir tikai viena primārā atslēga.
Kandidātu atslēgām jābūt unikālām.
Attiecība ir BCNF, ja katrs determinants ir kandidāta atslēga. Apsveriet datu bāzes tabulu, kurā tiek glabāta informācija par darbiniekiem un kurai ir atribūti,,, un.
Šajā tabulā lauks nosaka vārdu_vārds un uzvārds. Līdzīgi kortežs (,) nosaka.
Darbinieka ID | Vārds | Uzvārds | Title |
13133 | Emīlija | Smits | Vadītājs |
13134 | Džims | Smits | Asociētais darbinieks |
13135 | Emīlija | Džounss | Asociētais darbinieks |
Šīs datu bāzes kandidāta atslēga ir jo tā ir vienīgā vērtība, ko nevar izmantot citā rindā.
FAQ
Kādas ir prasības Boisa-Koda parastajai formai?
Tabula atbilst Boisa-Koda parastās formas (BCNF) prasībām, ja visi noteicošie ir kandidātatslēgas un relācija ir trešā normālā formā (3NF). 3NF atbilst pirmās parastās formas (1NF) un otrās parastās formas (2NF) noteikumiem, un visas kolonnas ir atkarīgas no primārās atslēgas.
Kāda ir atšķirība starp ceturto normālo formu un Boisa-Koda parasto formu?
Ceturtā parastā forma (4NF) ir vienu līmeni pēc Boisa-Koda parastās formas (BCNF) datu bāzes normalizēšanā. 4NF atbilst 3NF prasībām tāpat kā BCNF. Tomēr 4NF tabulām nav daudzvērtību atkarību vai daudzu attiecību relāciju, savukārt BCNF tabulām var būt šīs atkarības.