Wat is Boyce-Codd Normal Form (BCNF)?

Inhoudsopgave:

Wat is Boyce-Codd Normal Form (BCNF)?
Wat is Boyce-Codd Normal Form (BCNF)?
Anonim

Het doel van Boyce-Codd Normal Form is om de gegevensintegriteit te vergroten door de kolommen en tabellen van een relationele database te ordenen om databasenormalisatie te bereiken. Databasenormalisatie 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.

Image
Image

De doelen van databasenormalisatie zijn het elimineren van overbodige gegevens en zorgen ervoor 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 Normal Form

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

BCNF is in 1974 gemaakt door Raymond Boyce en Edgar Codd als een uitbreiding op de derde normaalvorm, of 3NF. De mannen werkten aan het maken van databaseschema's die redundanties minimaliseren met als doel de rekentijd te verminderen. De derde normaalvorm verwijdert kolommen die niet afhankelijk zijn van de primaire sleutel naast het voldoen aan de richtlijnen in de eerste en tweede normaalvorm. BCNF, ook wel 3.5NF genoemd, voldoet aan alle vereisten van 3NF en vereist dat kandidaatsleutels niet afhankelijk zijn van andere attributen in een tabel.

Ten tijde van de oprichting van BCNF was Boyce een van de belangrijkste ontwikkelaars van Structured English Query Language, later gestandaardiseerd als SQL, dat het ophalen van gegevens verbeterde door gebruik te maken van het relationele model van Codd. In dit model stelde Codd dat de structurele complexiteit van databases kon worden verminderd, wat betekende dat query's krachtiger en flexibeler konden zijn.

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

Kandidaatsleutels en BCNF

Een kandidaatsleutel is een kolom of combinatie van kolommen in een tabel die een unieke sleutel vormt in de database. De combinatie van attributen identificeert een databaserecord zonder te verwijzen naar andere gegevens. Elke tabel kan meerdere kandidaatsleutels bevatten, waarvan elk kan worden gekwalificeerd als de primaire sleutel. Een tabel bevat slechts één primaire sleutel.

Kandidaatsleutels moeten uniek zijn.

Een relatie is in BCNF als elke determinant een kandidaatsleutel is. Overweeg een databasetabel die werknemersinformatie opslaat en de attributen,,, en. heeft

In deze tabel bepa alt het veld voornaam en achternaam. Op dezelfde manier bepa alt de tuple (,).

Werknemers-ID Voornaam Achternaam Titel
13133 Emily Smith Manager
13134 Jim Smith Associate
13135 Emily Jones Associate

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

FAQ

    Wat zijn de vereisten voor Boyce-Codd Normal Form?

    Een tabel voldoet aan de Boyce-Codd Normal Form (BCNF)-vereisten als alle determinanten kandidaat-sleutels zijn en de relatie in Third Normal Form (3NF) is. 3NF voldoet aan de regels voor First Normal Form (1NF) en Second Normal Form (2NF), en alle kolommen zijn afhankelijk van de primaire sleutel.

    Wat is het verschil tussen de vierde normaalvorm en de Boyce-Codd-normaalvorm?

    Fourth Normal Form (4NF) is één niveau na Boyce-Codd Normal Form (BCNF) in databasenormalisatie. 4NF voldoet net als BCNF aan de 3NF-vereisten. 4NF-tabellen hebben echter geen meerwaardige afhankelijkheden of veel-op-een-relaties, terwijl BCNF-tabellen deze afhankelijkheden wel kunnen hebben.

Aanbevolen: