Scopul Boyce-Codd Normal Form este de a crește integritatea datelor prin organizarea coloanelor și tabelelor unei baze de date relaționale pentru a realiza normalizarea bazei de date. Normalizarea bazei de date are loc atunci când există relații stabilite între tabele și când tabelele au reguli definite pentru a face baza de date mai flexibilă și pentru a păstra datele.
Obiectivele normalizării bazei de date sunt de a elimina datele redundante și de a se asigura că dependențele de date au sens. O bază de date este normalizată atunci când aceleași date nu sunt stocate în mai mult de un tabel și atunci când într-un tabel sunt stocate numai date asociate.
Originea formei normale Boyce-Codd
Urmând o serie de linii directoare, asigurați-vă că bazele de date sunt normalizate. Aceste instrucțiuni sunt denumite forme normale și sunt numerotate de la unu la cinci. O bază de date relațională este descrisă ca fiind normalizată dacă îndeplinește primele trei forme: 1NF, 2NF și 3NF.
BCNF a fost creat ca o extensie a celei de-a treia forme normale, sau 3NF, în 1974 de Raymond Boyce și Edgar Codd. Bărbații lucrau pentru a crea scheme de baze de date care minimizează redundanțele cu scopul de a reduce timpul de calcul. A treia formă normală elimină coloanele care nu depind de cheia primară, în plus față de îndeplinirea regulilor din prima și a doua formă normală. BCNF, care este uneori denumit 3.5NF, îndeplinește toate cerințele 3NF și necesită ca cheile candidate să nu aibă nicio dependență de alte atribute dintr-un tabel.
La momentul creării BCNF, Boyce a fost unul dintre dezvoltatorii cheie ai limbajului Structured English Query Language, ulterior standardizat ca SQL, care a îmbunătățit recuperarea datelor utilizând modelul relațional al lui Codd. În acest model, Codd a postulat că complexitatea structurală a bazelor de date ar putea fi redusă, ceea ce înseamnă că interogările ar putea fi mai puternice și mai flexibile.
Folosind informațiile sale de baze de date relaționale, Codd a definit liniile directoare 1NF, 2NF și 3NF. A făcut echipă cu Boyce pentru a defini BCNF.
Chei de candidat și BCNF
O cheie candidată este o coloană sau o combinație de coloane dintr-un tabel care formează o cheie unică în baza de date. Combinația de atribute identifică o înregistrare a bazei de date fără a se referi la alte date. Fiecare tabel poate conține mai multe chei candidate, oricare dintre acestea se poate califica ca cheie primară. Un tabel conține o singură cheie primară.
Cheile candidate trebuie să fie unice.
O relație este în BCNF dacă fiecare determinant este o cheie candidată. Luați în considerare un tabel de bază de date care stochează informații despre angajați și care are atributele,,, și.
În acest tabel, câmpul determină prenume și prenume. În mod similar, tuplul (,) determină.
Id de angajat | Prenumele | Nume | Titlu |
13133 | Emily | Smith | Manager |
13134 | Jim | Smith | Asociat |
13135 | Emily | Jones | Asociat |
Cheia candidată pentru această bază de date este deoarece este singura valoare care nu poate fi folosită de un alt rând.
Întrebări frecvente
Care sunt cerințele pentru forma normală Boyce-Codd?
Un tabel îndeplinește cerințele Boyce-Codd Normal Form (BCNF) dacă toți determinanții sunt chei candidate și relația este în Third Normal Form (3NF). 3NF îndeplinește regulile pentru prima formă normală (1NF) și a doua formă normală (2NF), iar toate coloanele depind de cheia primară.
Care este diferența dintre a patra formă normală și forma normală Boyce-Codd?
Fourth Normal Form (4NF) este un nivel după Boyce-Codd Normal Form (BCNF) în normalizarea bazei de date. 4NF îndeplinește cerințele 3NF la fel ca BCNF. Cu toate acestea, tabelele 4NF nu au dependențe cu mai multe valori sau relații multi-la-unu, în timp ce tabelele BCNF ar putea avea aceste dependențe.