← Powrót do Słowniczka

Normalizacja Baz Danych

Szczegółowe omówienie procesu, postaci normalnych i anomalii.

Co to jest Normalizacja?

Jest to proces organizowania danych w bazie w taki sposób, aby zminimalizować redundancję (niepotrzebne powielanie tych samych informacji) oraz uniknąć problemów przy modyfikacji danych. Głównym celem jest podzielenie dużych tabel na mniejsze i powiązanie ich relacjami.

Dlaczego normalizujemy? (Anomalie)

Brak normalizacji prowadzi do trzech głównych błędów:

Postacie Normalne (Normal Forms)

I Postać Normalna (1NF) - Atomowość

Każda komórka w tabeli musi zawierać tylko jedną wartość. Tabela nie może zawierać powtarzających się grup kolumn.

II Postać Normalna (2NF)

Tabela musi spełniać warunki 1NF. Wszystkie kolumny niebędące kluczem muszą zależeć od całego klucza głównego (ważne przy kluczach złożonych).

III Postać Normalna (3NF)

Tabela musi spełniać warunki 2NF. Kolumny niebędące kluczami nie mogą zależeć od innych kolumn niebędących kluczami (brak zależności przechodnich).

Przykład: Miasto zależy od Kodu Pocztowego, a nie bezpośrednio od Pracownika. Należy je wydzielić do osobnej tabeli.

Denormalizacja

Jest to świadome cofnięcie procesu normalizacji w celu zwiększenia wydajności odczytu. Stosowana często w hurtowniach danych, gdzie szybkość raportowania jest ważniejsza niż oszczędność miejsca.