Integralność encji (entity integrity) to zasada modelu relacyjnego mówiąca, że każdy wiersz (rekord) w tabeli musi być możliwy do jednoznacznego wskazania. W praktyce realizuje się to przez zdefiniowanie klucza głównego (PRIMARY KEY), czyli atrybutu/zbioru atrybutów, które:
- mają wartości unikalne dla każdego rekordu,
- nie mogą być puste (w ujęciu klasycznym: nie dopuszczają NULL w identyfikatorze).
Dlatego poprawne jest stwierdzenie, że integralność encji zostanie zachowana m.in. wtedy, gdy dla każdej tabeli zostanie utworzony klucz główny (co zapewnia jednoznaczne "tożsamości" rekordów).
Dlaczego pozostałe odpowiedzi są niepoprawne?
- "Każdej kolumnie zostanie przypisany typ danych" – typy danych pomagają kontrolować format i zakres wartości, ale same nie gwarantują unikalnej identyfikacji rekordów. Tabela może mieć typy danych, a nadal zawierać duplikaty.
- "Klucz główny będzie zawsze liczbą całkowitą" – to zbyt kategoryczne. Klucz główny może być tekstem, UUID, albo kluczem złożonym z kilku kolumn; ważna jest unikalność, nie konkretny typ.
- "Każdy klucz główny będzie miał odpowiadający mu klucz obcy w innej tabeli" – to miesza integralność encji z integralnością referencyjną. Klucz obcy jest potrzebny dopiero wtedy, gdy jakaś tabela rzeczywiście ma relację do innej; nie jest to wymóg dla każdego PRIMARY KEY.
Wskazówka egzaminacyjna: jeśli w odpowiedzi pojawia się słowo "zawsze", sprawdź, czy nie jest to fałszywe uogólnienie. W bazach danych wiele zasad ma wyjątki zależne od projektu.