Skip to main content

Czym jest normalna forma Boyce-Codd (BCNF)?

Postać normalna Boyce'a-Codda (przykłady) (Lipiec 2025)

Postać normalna Boyce'a-Codda (przykłady) (Lipiec 2025)
Anonim

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 <> >, , , i .

W tej tabeli pole określa Imię i nazwisko . Podobnie krotka ( , ) określa .

Numer identyfikacyjny pracownikaImięNazwiskoTytuł
13133EmiliaKowalMenedżer
13134JimKowalWspółpracownik
13135EmiliaJonesWspółpracownik

Kluczem kandydującym do tej bazy danych jest ponieważ jest to jedyna wartość, której nie można użyć w innym wierszu.