Co to jest integralność encji?
Integralność encji to zasada projektowania relacyjnych baz danych, która zapewnia, że każdy rekord w tabeli można jednoznacznie zidentyfikować. Osiąga się to przez zdefiniowanie klucza głównego dla tabeli.
Encją może być np. klient, produkt, zamówienie albo pracownik. Każdy wiersz tabeli reprezentuje jedną konkretną encję, dlatego musi mieć unikalny identyfikator.
Najważniejsza zasada
Integralność encji jest zachowana, gdy:
- każda tabela ma zdefiniowany klucz główny,
- wartość klucza głównego jest unikalna,
- klucz główny nie przyjmuje wartości NULL.
Przykład:
CREATE TABLE klienci (
id_klienta INT PRIMARY KEY,
imie VARCHAR(50),
nazwisko VARCHAR(50)
);
Kolumna id_klienta jednoznacznie identyfikuje każdego klienta.
Czego integralność encji nie wymaga?
Integralność encji nie oznacza, że:
- klucz główny musi być liczbą całkowitą,
- każda kolumna musi mieć określony typ danych,
- każdy klucz główny musi mieć odpowiadający klucz obcy w innej tabeli.
Typ danych kolumny jest ważny technicznie, ale sam w sobie nie gwarantuje identyfikacji rekordów.
W kontekście egzaminu
Jeśli pytanie dotyczy integralności encji, najczęściej poprawna odpowiedź będzie związana z kluczem głównym. Dla każdej tabeli powinien istnieć klucz główny, który pozwala jednoznacznie odróżnić rekordy.