Celem Boyce-Codd Normal Form (BCNF) jest zwiększenie integralności danych poprzez organizowanie kolumn i tabel relacyjnej bazy danych w celu osiągnięcia normalizacji bazy danych. Normalizacja bazy danych występuje, gdy istnieją ustanowione relacje między tabelami i kiedy tabele mają zdefiniowane reguły, aby zwiększyć elastyczność bazy danych i zachować dane.
Celem normalizacji bazy danych jest wyeliminowanie zbędnych danych i zapewnienie, że zależności danych mają sens.
Baza danych jest znormalizowana, gdy te same dane nie są przechowywane w więcej niż jednej tabeli i gdy tylko powiązane dane są przechowywane w tabeli.
Pochodzenie normalnej formy Boyce-Codda
Po serii wytycznych zapewnij znormalizowanie baz danych. Te wytyczne są określane jako zwykłe formularze i są ponumerowane od jednego do pięciu. Relacyjna baza danych jest opisana jako znormalizowana, jeśli spełnia pierwsze trzy formy: 1NF, 2NF i 3NF.
BCNF został stworzony jako rozszerzenie trzeciej normalnej formy, czyli 3NF, w 1974 r. Przez Raymonda Boyce'a i Edgara Codda. Mężczyźni pracowali nad stworzeniem schematów baz danych, które minimalizują liczbę zwolnień w celu skrócenia czasu obliczeń. Trzecia normalna forma usuwa kolumny, które nie są zależne od klucza głównego, a ponadto spełnia wytyczne w pierwszej i drugiej normalnej formie. BCNF, który jest czasami określany jako 3.5NF, spełnia wszystkie wymagania 3NF i wymaga, aby klucze kandydujące nie były zależne od innych atrybutów w tabeli.
W czasie tworzenia BCNF, Boyce był jednym z kluczowych twórców angielskiego języka SQL (Structured English Query Language), który poprawiał pobieranie danych za pomocą modelu relacyjnego Codda. W tym modelu Codd stwierdził, że strukturalna złożoność baz danych może zostać zmniejszona, co oznacza, że zapytania mogą być bardziej wydajne i elastyczne.
Korzystając z jego relacyjnych baz danych, Codd zdefiniował wytyczne 1NF, 2NF i 3NF. Połączył siły z Boyce'em, aby zdefiniować BCNF.
Kody kandydatów i BCNF
Klucz kandydujący jest kolumną lub kombinacją kolumn w tabeli, która tworzy unikalny klucz w bazie danych. Kombinację atrybutów można wykorzystać do identyfikacji rekordu bazy danych bez odwoływania się do żadnych innych danych. Każda tabela może zawierać wiele kluczy kandydatów, z których każdy może zostać zakwalifikowany jako klucz podstawowy. Tabela zawiera tylko jeden klucz podstawowy.
Klucze kandydatów muszą być unikatowe.
Relacja jest w BCNF, jeśli każdy wyznacznik jest kluczem kandydującym. Rozważ tabelę bazy danych, która przechowuje informacje o pracownikach i ma atrybuty <> >,
W tej tabeli pole
Numer identyfikacyjny pracownika | Imię | Nazwisko | Tytuł |
13133 | Emilia | Kowal | Menedżer |
13134 | Jim | Kowal | Współpracownik |
13135 | Emilia | Jones | Współpracownik |
Kluczem kandydującym do tej bazy danych jest