KWALIFIKACJA INF3 - STYCZEŃ 2019

PYTANIE NR 22.
Co można powiedzieć o normalizacji przedstawionej tabeli?
Ilustracja przedstawia tabelę z dwiema kolumnami i trzema wierszami, w tym jednym nagłówkowym.
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Normalizacja polega na takim podziale danych, aby ograniczyć redundancję i anomalia modyfikacji. Odpowiedź "Tabela nie jest znormalizowana." pasuje, gdy tabela narusza warunki 1NF/2NF/3NF (np. zawiera zależności częściowe lub przechodnie, albo powtarzające się grupy danych). Pozostałe opcje zakładają spełnienie rygorystycznych kryteriów 1NF–3NF.

Pełne wyjaśnienie:

Normalizacja w relacyjnych bazach danych ma na celu zmniejszenie redundancji oraz ograniczenie typowych problemów (anomalii) pojawiających się przy wstawianiu, aktualizacji i usuwaniu danych. W praktyce ocenia się, czy tabela spełnia kolejne postacie normalne, analizując klucze oraz zależności funkcyjne między atrybutami.

Dlaczego poprawne jest stwierdzenie "Tabela nie jest znormalizowana."
Taką odpowiedź wybiera się wtedy, gdy w przedstawionej tabeli da się zauważyć naruszenie co najmniej jednej z podstawowych zasad:

  • 1NF: każda komórka powinna zawierać pojedynczą (atomową) wartość, bez list i powtarzających się grup w jednej kolumnie lub w wielu podobnych kolumnach.
  • 2NF: jeżeli występuje klucz złożony, to każdy atrybut niekluczowy musi zależeć od całego klucza, a nie tylko od jego części (brak zależności częściowych).
  • 3NF: atrybuty niekluczowe nie powinny zależeć od innych atrybutów niekluczowych (brak zależności przechodnich typu: klucz → A, A → B).

Jeśli tabela zawiera atrybuty opisujące różne byty naraz (np. dane klienta i dane zamówienia w jednym rekordzie) albo przechowuje informacje, które powinny być wydzielone do osobnych tabel, wówczas uznaje się, że nie jest poprawnie znormalizowana.

Dlaczego pozostałe stwierdzenia są błędne (w kontekście tabeli uznanej za nieznormalizowaną):

  • "Tabela jest w pierwszej postaci normalnej." jest nieprawdziwe, gdy widać wartości nieatomowe lub powtarzające się grupy danych.
  • "Tabela jest w drugiej postaci normalnej." odpada, gdy atrybuty zależą tylko od części klucza złożonego albo gdy nadal występują typowe redundancje związane z mieszaniem bytów.
  • "Tabela jest w trzeciej postaci normalnej." jest najsilniejszym twierdzeniem: wymaga spełnienia 1NF i 2NF oraz braku zależności przechodnich; jakiekolwiek "opisowe" pola zależne od innych pól niekluczowych to częsta przyczyna niespełnienia 3NF.

Wskazówka egzaminacyjna: zacznij od znalezienia klucza (lub klucza złożonego), potem sprawdź, czy jakiekolwiek pole opisowe może zmieniać się niezależnie od klucza (to sygnał redundancji). Jeśli tak, zwykle potrzebna jest dekompozycja na 2–3 tabele z relacją i kluczami obcymi.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Normalizacja to porządkowanie struktury tabel tak, aby ograniczyć redundancję i anomalia modyfikacji danych. W praktyce polega na takim podziale danych na tabele, by każdy fakt był zapisany w jednym miejscu, a powiązania realizowały klucze (główny i obce).
Typowe sygnały naruszenia 1NF to wartości nieatomowe: listy w jednej komórce (np. wiele telefonów w jednym polu), powtarzające się grupy lub kolumny o tym samym znaczeniu (np. Produkt1, Produkt2). W 1NF każda komórka ma jedną wartość.
2NF eliminuje zależności częściowe, które występują głównie wtedy, gdy klucz główny jest złożony. Jeśli atrybut niekluczowy zależy tylko od części klucza, dane powinny zostać rozdzielone do osobnej tabeli, aby uniknąć redundancji.
Zależność przechodnia zachodzi, gdy atrybut niekluczowy zależy od innego atrybutu niekluczowego (np. klucz → KodPocztowy, KodPocztowy → Miasto). W 3NF dąży się do usunięcia takich zależności, zwykle przez wydzielenie osobnej tabeli słownikowej.
Najczęstsze to anomalia wstawiania (nie da się dodać części danych bez innych), anomalia aktualizacji (trzeba poprawiać to samo w wielu wierszach) i anomalia usuwania (usunięcie rekordu kasuje niepowiązaną informację). Normalizacja zmniejsza ryzyko tych problemów.
Uczniowie często mylą 2NF z 3NF, nie analizują klucza złożonego albo uznają tabelę za "dobrą", bo wygląda czytelnie. Kluczowe jest sprawdzenie zależności: czy pola opisowe zależą od całego klucza i czy nie wynikają z innych pól opisowych.
Najczęściej 3NF jest dobrym punktem wyjścia dla integralności i utrzymania danych. W systemach o dużej liczbie odczytów czasem stosuje się kontrolowaną denormalizację (np. pod raporty), ale świadomie i z mechanizmami spójności. Na egzaminie zwykle ocenia się klasyczną normalizację.
Klucz główny to atrybut (lub zestaw atrybutów), który jednoznacznie identyfikuje wiersz. Sprawdź, czy wartości się nie powtarzają i czy da się nimi wskazać rekord bez dodatkowych danych. Jeśli pojedyncze pole nie wystarcza, rozważ klucz złożony.
Najczęściej pojawiają się relacje 1:N (np. klient → zamówienia) realizowane kluczem obcym oraz czasem N:M, którą rozwiązuje się tabelą pośrednią (łącznikową). Dobra normalizacja prowadzi do jasnych powiązań i mniejszej liczby duplikatów danych.
Szukaj "czerwonych flag": list w komórkach, kolumn typu X1/X2/X3, danych adresowych powtarzanych przy wielu rekordach, pól wynikających z innych pól (np. miasto z kodu). Jeśli takie elementy są widoczne, zwykle potrzebna jest dekompozycja, więc tabela nie jest znormalizowana.
info

Około 28% zdających odpowiada poprawnie na to pytanie. bardzo trudne

Według specjalistów z branży: "Normalizacja polega na takim podziale danych, aby ograniczyć redundancję i anomalia modyfikacji."

Źródła:

  • Microsoft Learn: "Normalize data in a database" (sekcja o celach normalizacji i postaciach normalnych), https://learn.microsoft.com/en-us/office/troubleshoot/access/database-normalization-description (dostęp 2026-02-27)
  • IBM Documentation: "Normalization" (opis koncepcji i korzyści), https://www.ibm.com/docs/en/informix-servers/14.10?topic=concepts-normalization (dostęp 2026-02-27)
  • Wikipedia (EN): "Database normalization" (definicje 1NF/2NF/3NF), https://en.wikipedia.org/wiki/Database_normalization (dostęp 2026-02-27)

Materiały:

  • Dokumentacja systemu bazodanowego (np. sekcje o normalizacji i projektowaniu schematu)
  • Materiały kursowe o modelu relacyjnym i zależnościach funkcyjnych
  • Zadania praktyczne: normalizacja przykładowych tabel do 3NF

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego