Skip to main content

Wat is Boyce-Codd Normal Form (BCNF)?

Boyce-Codd Normal Form (BCNF) | Database Normalization | DBMS (Juni- 2026)

Boyce-Codd Normal Form (BCNF) | Database Normalization | DBMS (Juni- 2026)
Anonim

Het doel van Boyce-Codd Normale Formulier (BCNF) is om de gegevensintegriteit te vergroten door de kolommen en tabellen van een relationele database te ordenen om database-normalisatie te bereiken. Database-normalisatie vindt plaats wanneer er relaties zijn tussen tabellen en wanneer de tabellen gedefinieerde regels hebben om de database flexibeler te maken en de gegevens te behouden.

De doelen van database-normalisatie zijn om overbodige gegevens te elimineren en ervoor te zorgen dat gegevensafhankelijkheden zinvol zijn.

Een database wordt genormaliseerd wanneer dezelfde gegevens niet in meer dan één tabel worden opgeslagen en wanneer alleen gerelateerde gegevens in een tabel worden opgeslagen.

Oorsprong van Boyce-Codd Normale vorm

Het volgen van een reeks richtlijnen zorgt ervoor dat databases worden genormaliseerd. Deze richtlijnen worden normale formulieren genoemd en zijn genummerd van één tot vijf. Een relationele database wordt beschreven als genormaliseerd als deze voldoet aan de eerste drie vormen: 1NF, 2NF en 3NF.

BCNF is gemaakt als een uitbreiding op de derde normale vorm, of 3NF, in 1974 door Raymond Boyce en Edgar Codd. De mannen werkten aan het maken van databaseschema's om overtolligheden te minimaliseren met als doel de computertijd te verkorten. Het derde normale formulier verwijdert kolommen die niet afhankelijk zijn van de primaire sleutel naast het voldoen aan de richtlijnen in de eerste en tweede normale formulieren. BCNF, dat ook wel 3.5NF wordt genoemd, voldoet aan alle vereisten van 3NF en vereist dat kandidaatsleutels geen afhankelijkheid hebben van andere kenmerken in een tabel.

Op het moment van de oprichting van BCNF was Boyce een van de belangrijkste ontwikkelaars van Structured English Query Language (SQL), die het ophalen van gegevens verbeterde door het relationele model van Codd te gebruiken. In dit model stelde Codd dat de structurele complexiteit van databases zou kunnen worden beperkt, wat betekent dat zoekopdrachten krachtiger en flexibeler zouden kunnen zijn.

Met behulp van zijn relationele database-inzichten definieerde Codd 1NF, 2NF en 3NF-richtlijnen. Hij ging samenwerken met Boyce om BCNF te definiëren.

Candidate Keys en BCNF

Een kandidaatsleutel is een kolom of combinatie van kolommen in een tabel die een unieke sleutel in de database vormt. De combinatie van kenmerken kan worden gebruikt om een ​​databaserecord te identificeren zonder naar andere gegevens te verwijzen. Elke tabel kan meerdere kandidaat-sleutels bevatten, waarvan elke kan kwalificeren als de primaire sleutel. Een tabel bevat slechts één primaire sleutel.

Kandidaatsleutels moeten uniek zijn.

Een relatie bevindt zich in BCNF als elke determinant een kandidaat-sleutel is. Beschouw een databasetabel die werknemersinformatie opslaat en heeft de kenmerken <> >, , , en .

In deze tabel het veld bepaalt Voornaam en achternaam . Evenzo is het tuple ( , ) bepaalt .

Werknemers-IDVoornaamAchternaamTitel
13133EmilysmidManager
13134JimsmidAssociëren
13135EmilyJonesAssociëren

De kandidaat-sleutel voor deze database is de omdat het de enige waarde is die niet door een andere rij kan worden gebruikt.