BCNF minimearret redundaasjes en nimt gegevens yntegriteit
It doel fan Boyce-Codd Normal Form (BCNF) is om dataintegriteit te fergrutsjen troch it organisearjen fan de kolommen en tabellen fan in relaasje-database om de normaasje fan database te realisearjen. Databanknarisearring is bard as der relaasjes tusken tabellen fêststeld binne en wannear't de tabels regels definiearre hawwe om de databank flugger te meitsjen en de gegevens te behâlden.
De doelen fan de normale databank binne dat redundante gegevens te eliminearjen en soargje dat dataôfhinklikens sin betsjutte.
In databank is normearre wannear't deselde gegevens net mear yn ien tabel opslein wurde en as allinich dêryn bepaalde gegevens yn in tafel opslein binne.
Oarsprong fan Boyce-Codd Normal Form
Nei in rige fan rjochtlinen soargje derfoar dat databanken normearre wurde. Dizze rjochtlinen wurde neamd as normale foarmen en binne nûmere fan ien fan 'e fiif. In relaasje-database is beskreaun as normalisearre as it de earste trije formulieren foldocht: 1NF, 2NF, en 3NF.
BCNF is ûntstien as in útwreiding foar de tredde normale foarm, of 3NF, yn 1974 troch Raymond Boyce en Edgar Codd. De manlju wurken oan om skealje fan database-skema's te meitsjen dy't minimale ferwidering meitsje mei it doel fan 'e kompensearjende tiid te fergrutsjen. De tredde normale foarm fuortsmiet de kolommen dy't net ôfhinklik binne fan 'e primêre kaai neist de gearkomsten yn' e earste en twadde normale foarmen. BCNF, dat soms ek as 3.5NF neamd wurdt, foldocht oan alle easken fan 3NF en fereasket dat kandidaatskippen gjin ôfwikseling hawwe oer oare attributen yn in tabel.
Yn 'e tiid fan it ûntstean fan' e BCNF wie Boyce ien fan 'e wichtige ûntwikkelders fan' e strukturearre Ingelsk Query Language (SQL), dy't ferbettere gegevens weromkaam troch it relaasjemodel Codd te brûken. Yn dit model stelde Codd dat struktureel kompleksiteit fan databases kin wurde ferlege, wat betsjutte dat fragen mooglik makliker en fleksibel wêze kinne.
Mei syn relaasje-database ynsichten, Codd definieare 1NF, 2NF, en 3NF-rjochtlinen. Hy hie mei Boyce tegearre om BCNF te definiearjen.
Candidate Keys en BCNF
In kandidaat kieze in kolom of kombinaasje fan kolommen yn in tabel dy't in unyk kaai foarmet yn de database. De kombinaasje fan attributen kin brûkt wurde om in databasedateken te identifisearjen sûnder referinsjes nei oare data. Elke tabel kin meardere kandidaatskippen befetsje, elk ien kin kwalifisearje as de primêre kaai. In tabel befettet inkele primêre kaai.
Kandidatenkoppen moatte unyk wêze.
In relaasje is yn BCNF as elke fêststeller in kandidaat is. Tink derom dat in databank tabel hâldt dat personielynformaasje bewarret en hat de eigenskippen
Yn dizze tabel befettet it fjild
| Employee Id | Foarnamme | Achternamme | Titel |
| 13133 | Emily | Smith | Behearder |
| 13134 | Jim | Smith | Kompanjon |
| 13135 | Emily | Jones | Kompanjon |
De kandidaat foar dizze databank is de