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: Programowanie webowe Bazy danych

Słowa kluczowe: Klucz główny w SQL

Wartość pola tabeli pełniącego rolę klucza podstawowego

A. służy do szyfrowania zawartości tabeli.
Źle. Klucz w bazie danych identyfikuje rekord; z szyfrowaniem nie ma związku.
B. jest zawsze typu numerycznego.
Źle. Kluczem może być też napis, na przykład kod produktu czy login.
C. może przyjmować wartość pustą (NULL).
Źle. Klucz podstawowy ma automatycznie ograniczenie NOT NULL.
D. musi być unikalna.
Dobrze. Klucz podstawowy jednoznacznie identyfikuje rekord, więc wartości nie mogą się powtarzać.

Pytanie z egzaminu CKE, wrzesień 2015 (arkusz E.14-X-15.08).

Klucz podstawowy (PRIMARY KEY) jednoznacznie identyfikuje każdy wiersz tabeli, więc jego wartość musi być unikalna: dwa rekordy nie mogą mieć tego samego klucza. Baza danych sama tego pilnuje i odrzuca polecenie INSERT, które próbuje wstawić powtórzoną wartość.

Druga cecha klucza podstawowego to brak wartości pustych - kolumna klucza ma automatycznie ograniczenie NOT NULL. Typowy zapis w MySQL: id INT AUTO_INCREMENT PRIMARY KEY, dzięki któremu serwer sam nadaje kolejne numery. Na kluczu podstawowym opierają się relacje: klucz obcy w innej tabeli wskazuje właśnie wartość klucza podstawowego.

Gdy pojedyncza kolumna nie wystarcza, klucz może się składać z kilku kolumn (klucz złożony) - wtedy unikalna musi być ich kombinacja.

Szyfrowanie nie ma z kluczem podstawowym nic wspólnego. Słowo „klucz” kojarzy się z kryptografią, ale w bazach danych oznacza pole identyfikujące rekord. Szyfrowaniem zajmują się osobne mechanizmy, na przykład funkcje szyfrujące albo szyfrowanie połączenia z serwerem.

Klucz zwykle jest liczbą z autonumeracją, stąd przekonanie, że zawsze jest numeryczny. Kluczem może jednak być także napis, na przykład numer PESEL zapisany jako tekst, kod produktu albo login użytkownika - liczy się unikalność, nie typ danych.

Wartość pusta (NULL) jest w kluczu podstawowym zabroniona, bo rekord bez identyfikatora nie dałby się jednoznacznie wskazać. Właściwa cecha to unikalność wartości, uzupełniona zakazem NULL.

Łatwo to sprawdzić w phpMyAdmin: próba dodania dwóch wierszy z tym samym kluczem kończy się błędem „Duplicate entry”, a pusty klucz - komunikatem, że kolumna nie może przyjąć NULL.

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.