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

Słowa kluczowe: CREATE TABLE w SQL DDL w SQL PRIMARY KEY w SQL

W instrukcji CREATE TABLE użycie klauzuli PRIMARY KEY przy deklaracji pola tabeli spowoduje, że pole to stanie się

A. indeksem klucza.
Źle. Indeks przyspiesza wyszukiwanie, ale to nie jest nazwa roli nadawanej przez PRIMARY KEY.
B. kluczem obcym.
Źle. Klucz obcy definiuje się klauzulą FOREIGN KEY ... REFERENCES, wskazującą inną tabelę.
C. kluczem podstawowym.
Dobrze. PRIMARY KEY czyni pole kluczem podstawowym: unikalnym i niepustym identyfikatorem rekordu.
D. indeksem unikalnym.
Źle. Indeks unikalny tworzy UNIQUE i dopuszcza NULL; klucz podstawowy jest czymś więcej.

Pytanie z egzaminu CKE, październik 2016 (arkusz E.14-X-16.08).

Klauzula PRIMARY KEY dopisana do pola w CREATE TABLE czyni je kluczem podstawowym tabeli, czyli jednoznacznym identyfikatorem każdego rekordu. Na przykład CREATE TABLE uczniowie (id INT AUTO_INCREMENT PRIMARY KEY, nazwisko VARCHAR(50)); sprawia, że dwa wiersze nie mogą mieć tego samego id.

Klucz podstawowy łączy dwie cechy: wartości muszą być unikalne i nie mogą być puste (NULL). Tabela ma najwyżej jeden klucz podstawowy, choć może on obejmować kilka kolumn. MySQL zakłada dla niego indeks automatycznie, ale nazwa tej roli to właśnie klucz podstawowy, a inne tabele odwołują się do niego kluczami obcymi.

Trudność polega na tym, że klucz podstawowy rzeczywiście ma cechy indeksu unikalnego, więc opisy indeksowe brzmią wiarygodnie. Indeks unikalny tworzy się jednak klauzulą UNIQUE, a taka kolumna może przyjmować wartość NULL i tabela może mieć wiele takich indeksów. PRIMARY KEY jest jeden na tabelę i nie dopuszcza pustych wartości, dlatego ma własną nazwę.

„Indeks klucza” to określenie bez ścisłego znaczenia w SQL - indeks jest mechanizmem, który przyspiesza wyszukiwanie, a nie rodzajem klucza.

Klucz obcy definiuje się inaczej: klauzulą FOREIGN KEY ... REFERENCES, która wiąże pole z kluczem podstawowym innej tabeli. Samo PRIMARY KEY przy deklaracji pola tworzy więc klucz podstawowy.

Przy projektowaniu tabeli kluczem podstawowym zostaje najczęściej sztuczny identyfikator liczbowy z autonumeracją, bo jego wartości są zawsze unikalne i nigdy się nie zmieniają.

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.