INF.03Bazy Danych
Integralność referencyjna i więzy spójności
Zasada w relacyjnych bazach danych zapewniająca, że relacje między tabelami pozostają spójne, a klucze obce zawsze wskazują na istniejące rekordy.
Na czym polega integralność referencyjna?
Gwarantuje, że w bazie danych nie powstaną tzw. rekordy osierocone (np. zamówienie przypisane do nieistniejącego klienta). Jeśli tabela podrzędna posiada klucz obcy, nie można:
- Wstawić do tabeli potomnej klucza obcego, którego nie ma w tabeli nadrzędnej.
- Usunąć rekordu z tabeli nadrzędnej, jeśli istnieją powiązane z nim rekordy potomne (chyba że zdefiniowano kaskadowość).
Reakcje na usuwanie/edycję (ON DELETE / ON UPDATE):
CASCADE– automatycznie usuwa lub aktualizuje powiązane rekordy w tabeli podrzędnej.RESTRICT– zgłasza błąd i blokuje operację w tabeli nadrzędnej.SET NULL– ustawia pole klucza obcego na wartośćNULL.NO ACTION– zachowuje się domyślnie tak jakRESTRICT.
Najczęstsze pułapki na egzaminie INF.03:
- Jeśli próbujesz usunąć tabelę nadrzędną poleceniem
DROP TABLE, baza zgłosi błąd, dopóki nie usuniesz najpierw tabeli potomnej lub więzów klucza obcego.
Chcesz sprawdzić to pojęcie w praktyce?
Przeszukaj pytania z oficjalnych arkuszy CKE powiązane z hasłem Integralność referencyjna i więzy spójności lub rozpocznij trening.