Przejdź do głównej treści

Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Zawód: Technik informatyk, Technik programista

Kategorie: Bazy danych

Kiedy zachowana jest integralność dziedzinowa (domenowa) w bazie danych?

A. gdy w żadnej tabeli nie ma kolumny typu tekstowego.
Źle. Kolumny tekstowe też mają dziedzinę, np. VARCHAR(50) albo ENUM. Rezygnacja z nich niczego nie zapewnia.
B. gdy każda wartość w kolumnie należy do zbioru wartości dopuszczalnych dla tej kolumny.
Dobrze. Integralność dziedzinowa oznacza, że wartości w kolumnie mieszczą się w jej dziedzinie: typie, zakresie i ograniczeniach.
C. gdy każda tabela ma utworzony klucz główny.
Źle. Klucz główny w każdej tabeli to warunek integralności encji, a nie dziedzinowej.
D. gdy każdy klucz obcy wskazuje istniejący rekord w tabeli nadrzędnej.
Źle. Poprawność powiązań przez klucze obce to integralność referencyjna.

Dziedzina, czyli domena, kolumny to zbiór wartości, jakie wolno w niej zapisać. Integralność dziedzinowa jest zachowana, gdy każda wartość mieści się w tym zbiorze: ma właściwy typ, długość i zakres. W kolumnie ocena nie znajdzie się 7 ani słowo „dobry”, jeśli dozwolone są liczby od 1 do 6.

Bazę danych pilnuje tego sama, jeśli dobrze opisze się kolumny: typ, np. DATE albo TINYINT, ograniczenie NOT NULL, wartość domyślna DEFAULT, typ wyliczeniowy ENUM('M','K') oraz warunek CHECK (ocena BETWEEN 1 AND 6), który MySQL egzekwuje od wersji 8.0.16. Obok niej wyróżnia się integralność encji i integralność referencyjną.

Błędne odpowiedzi opisują inne rodzaje integralności albo nie opisują żadnej. Utworzony klucz główny w każdej tabeli to warunek integralności encji. Ona gwarantuje, że każdy wiersz da się jednoznacznie odróżnić, ale nic nie mówi o tym, czy wartości w kolumnach są sensowne.

Klucz obcy wskazujący istniejący rekord to integralność referencyjna. Pilnuje powiązań między tabelami, np. żeby uczeń nie był przypisany do nieistniejącej klasy. To również nie dotyczy zakresu wartości w samej kolumnie.

Rezygnacja z kolumn tekstowych niczego nie zapewnia. Kolumny tekstowe są potrzebne, np. na nazwiska, i mogą mieć dobrze opisaną dziedzinę, np. VARCHAR(50) NOT NULL albo listę dozwolonych wartości w ENUM. Integralność dziedzinowa dotyczy zgodności wartości z dziedziną, a nie wyboru typów.

Krótko: encja dotyczy wierszy, dziedzina wartości w kolumnach, a referencja powiązań między tabelami.

Wymagane logowanie

Ocenianie trudności pytań jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się, aby skorzystać z pełni możliwości platformy.

Twoja ocena pomoże innym uczniom w przygotowaniu do egzaminu, a Tobie pozwoli na dostęp do spersonalizowanych statystyk.

Zgłoś błąd w pytaniu

Rozwiń sekcję i zmień pole, którego dotyczy błąd. Wysłane zostaną tylko zmienione sekcje.

Błędna kwalifikacja
Błąd w treści pytania
Błąd w treści odpowiedzi
Błąd w obrazie
Dane kontaktowe (opcjonalnie)
Podaj email, jeśli chcesz otrzymać informację o rozpatrzeniu zgłoszenia.