KWALIFIKACJA INF3 - PAŹDZIERNIK 2016

PYTANIE NR 19.
W instrukcji CREATE TABLE użycie klauzuli PRIMARY KEY przy deklaracji pola tabeli spowoduje, że pole to stanie się
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
PRIMARY KEY w poleceniu CREATE TABLE jest ograniczeniem integralności, które ustanawia dla danej kolumny (lub zestawu kolumn) klucz podstawowy. Oznacza to, że wartości muszą jednoznacznie identyfikować wiersze (nie mogą się powtarzać i zwykle nie mogą być puste). Nie jest to klucz obcy ani nazwa "indeksu klucza".

Pełne wyjaśnienie:

Klauzula PRIMARY KEY w definicji tabeli (CREATE TABLE) służy do wskazania atrybutu (kolumny) albo zestawu atrybutów, które będą kluczem podstawowym tabeli. W praktyce oznacza to, że wybrane pole/pola mają identyfikować każdy rekord jednoznacznie, czyli nie dopuszcza się duplikatów. W wielu systemach baz danych PRIMARY KEY wiąże się także z zakazem wartości pustych w kolumnach klucza.

Dlaczego poprawna jest odpowiedź "kluczem podstawowym"? Ponieważ PRIMARY KEY to właśnie deklaracja klucza podstawowego – jest to pojęcie z modelu relacyjnego oraz mechanizm wymuszania integralności encji. Klucz podstawowy jest później typowo wykorzystywany jako punkt odniesienia dla relacji, np. gdy inna tabela definiuje odwołanie poprzez FOREIGN KEY.

Dlaczego pozostałe odpowiedzi są niepoprawne?

  • "indeksem klucza" – to nie jest standardowe, jednoznaczne pojęcie SQL opisujące efekt PRIMARY KEY. Wewnętrznie DBMS może tworzyć indeks wspierający egzekwowanie unikalności, ale semantycznie PRIMARY KEY pozostaje ograniczeniem i definicją klucza, a nie "typem indeksu" jako celu samego w sobie.
  • "indeksem unikalnym" – UNIQUE i PRIMARY KEY są podobne (obie konstrukcje wymagają unikalności), ale PRIMARY KEY ma dodatkową rolę: wskazuje główny identyfikator wiersza oraz (zwykle) nie dopuszcza NULL. Unikalny indeks/ograniczenie UNIQUE nie jest tym samym co klucz podstawowy.
  • "kluczem obcym" – FOREIGN KEY służy do tworzenia powiązań między tabelami i wskazuje kolumnę odwołującą się do klucza w innej tabeli (najczęściej do PRIMARY KEY). PRIMARY KEY nie tworzy odwołania do innej tabeli, tylko definiuje identyfikator w tej samej tabeli.

Wskazówka egzaminacyjna: zapamiętaj, że PRIMARY KEY = identyfikator rekordu w tabeli, a FOREIGN KEY = odwołanie do rekordu w innej tabeli. UNIQUE dotyczy unikalności, ale nie ustanawia "głównego" klucza tabeli.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
PRIMARY KEY to ograniczenie (constraint), które wskazuje kolumnę lub zestaw kolumn jednoznacznie identyfikujących każdy wiersz tabeli. Wartości klucza podstawowego nie mogą się powtarzać, a w wielu DBMS nie mogą też być puste (NULL).
Dodanie PRIMARY KEY w CREATE TABLE powoduje ustanowienie klucza podstawowego dla wskazanej kolumny/kolumn. DBMS wymusza unikalność wartości, dzięki czemu każdy rekord ma jednoznaczny identyfikator, co ułatwia relacje i spójność danych.
UNIQUE wymusza unikalność wartości, ale nie ustanawia "głównego" identyfikatora tabeli. PRIMARY KEY oprócz unikalności pełni rolę podstawowego identyfikatora wiersza i jest typowym celem dla kluczy obcych. W wielu systemach PRIMARY KEY dodatkowo nie dopuszcza NULL.
W wielu popularnych DBMS utworzenie PRIMARY KEY wiąże się z utworzeniem struktury wspierającej szybkie wyszukiwanie i egzekwowanie unikalności (często indeksu). Jednak na egzaminie kluczowe jest znaczenie logiczne: PRIMARY KEY definiuje klucz podstawowy, a nie "rodzaj indeksu".
Operacja wstawienia lub aktualizacji zakończy się błędem, ponieważ PRIMARY KEY wymusza unikalność. DBMS nie pozwoli, aby dwa wiersze miały tę samą wartość klucza podstawowego, bo naruszałoby to jednoznaczną identyfikację rekordów.
W praktyce najczęściej nie. Wiele systemów baz danych traktuje PRIMARY KEY jako kombinację unikalności i wymogu niepustości, więc NULL nie jest akceptowany. Na potrzeby egzaminu przyjmij, że klucz podstawowy ma identyfikować rekord, więc nie powinien być pusty.
Najczęściej jest to kolumna typu liczbowego z kolejnymi identyfikatorami (np. id użytkownika, id zamówienia). Spotyka się też identyfikatory tekstowe, ale ważne jest, aby wartości były stabilne i unikalne. Klucz podstawowy ułatwia łączenie tabel w zapytaniach.
PRIMARY KEY identyfikuje rekord w tej samej tabeli. FOREIGN KEY to kolumna (lub kolumny) odwołująca się do klucza w innej tabeli, dzięki czemu tworzy relację i wymusza spójność referencyjną (np. zamówienie wskazuje istniejącego klienta).
Klucz złożony stosuje się, gdy jedno pole nie wystarcza do unikalnej identyfikacji rekordu, np. w tabelach łączących relacje wiele-do-wielu (użytkownik–rola). Wtedy PRIMARY KEY może składać się z dwóch lub więcej kolumn, które razem są unikalne.
Przećwicz składnię CREATE TABLE oraz constraints: PRIMARY KEY, FOREIGN KEY, UNIQUE, NOT NULL. Rób krótkie zadania: zaprojektuj 2–3 tabele i dopisz klucze. Na egzaminie zwracaj uwagę, czy pytanie dotyczy znaczenia constraintu, czy skutków (np. unikalność).
info

Około 69% zdających odpowiada poprawnie na to pytanie. średnie

Według specjalistów z branży: "PRIMARY KEY w poleceniu CREATE TABLE jest ograniczeniem integralności, które ustanawia dla danej kolumny (lub zestawu kolumn) klucz podstawowy."

Źródła:

  • PostgreSQL Documentation: "CREATE TABLE" (Constraints, PRIMARY KEY) https://www.postgresql.org/docs/current/sql-createtable.html - dostęp 2026-02-28
  • MySQL 8.0 Reference Manual: "CREATE TABLE Statement" (PRIMARY KEY) https://dev.mysql.com/doc/refman/8.0/en/create-table.html - dostęp 2026-02-28
  • SQLite Documentation: "CREATE TABLE" (PRIMARY KEY constraints) https://sqlite.org/lang_createtable.html - dostęp 2026-02-28

Materiały:

  • Dokumentacja używanego DBMS (np. PostgreSQL/MySQL) – sekcja CREATE TABLE i constraints
  • Materiały szkolne z projektowania relacyjnych baz danych (klucze, normalizacja)
  • Ćwiczenia: projekt przykładowej bazy dla sklepu/aplikacji i definiowanie PRIMARY KEY/FOREIGN KEY

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego