KWALIFIKACJA INF3 - CZERWIEC 2016

PYTANIE NR 15.
W poleceniu CREATE TABLE języka SQL atrybut określający, która kolumna tabeli jest kluczem podstawowym, to
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
PRIMARY KEY w definicji CREATE TABLE wskazuje kolumnę (lub zestaw kolumn) jednoznacznie identyfikującą każdy wiersz tabeli. Zapewnia unikalność i brak wartości NULL, a także stanowi typowy cel dla kluczy obcych w innych tabelach.

Pełne wyjaśnienie:

W poleceniu CREATE TABLE klucz podstawowy definiuje się przez ograniczenie PRIMARY KEY. Oznacza to, że wskazana kolumna (albo kilka kolumn jako klucz złożony) ma jednoznacznie identyfikować każdy rekord w tabeli.

Odpowiedź PRIMARY KEY jest poprawna, ponieważ:

  • definiuje klucz podstawowy tabeli,
  • wymusza unikalność wartości w kluczu,
  • nie dopuszcza wartości NULL w kolumnach należących do klucza,
  • jest standardowym mechanizmem, do którego odwołują się klucze obce (FOREIGN KEY) w relacjach między tabelami.

Pozostałe propozycje są błędne z typowych powodów egzaminacyjnych:

  • MAIN KEY nie jest standardowym słowem kluczowym SQL dla klucza podstawowego; brzmi intuicyjnie, ale nie występuje jako poprawna składnia ograniczenia.
  • UNIQUE tworzy ograniczenie unikalności, ale nie jest tym samym co klucz podstawowy. W tabeli można mieć wiele ograniczeń UNIQUE, natomiast klucz podstawowy jest tylko jeden (może być złożony). Ponadto PRIMARY KEY ma dodatkową semantykę identyfikatora encji.
  • IDENTITY FIELD nie jest ogólnym atrybutem definiującym klucz podstawowy; pojęcia typu IDENTITY dotyczą zwykle automatycznego generowania wartości (np. autoinkrementacji) w niektórych systemach, a nie samego wskazania PK. Kolumna może być generowana automatycznie i jednocześnie być PRIMARY KEY, ale to są dwa różne aspekty definicji.

W praktyce projektowej najczęściej spotkasz zapis w stylu: id INT PRIMARY KEY albo osobno jako constraint tabeli. Na egzaminie warto pamiętać, że pytanie dotyczy wskazania klucza podstawowego, więc szukasz właśnie PRIMARY KEY.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
PRIMARY KEY oznacza klucz podstawowy tabeli, czyli kolumnę (lub zestaw kolumn) jednoznacznie identyfikującą każdy wiersz. W praktyce jest to "główny identyfikator" rekordu, do którego często odwołują się klucze obce w innych tabelach.
Definiuje się go przez użycie ograniczenia PRIMARY KEY przy kolumnie lub jako ograniczenie tabeli. Najważniejsze jest wskazanie kolumn, które mają tworzyć unikalny identyfikator rekordu (czasem jest to klucz złożony z kilku kolumn).
UNIQUE wymusza unikalność wartości, ale nie nadaje kolumnie roli "głównego identyfikatora" encji. W tabeli może być kilka ograniczeń UNIQUE, natomiast klucz podstawowy jest jeden. PRIMARY KEY ma też typowo silniejszą semantykę w projektowaniu relacji.
Nie, tabela ma tylko jeden klucz podstawowy. Może on jednak obejmować kilka kolumn (tzw. klucz złożony). To częsty haczyk egzaminacyjny: wiele UNIQUE jest możliwych, ale PRIMARY KEY jest pojedynczy jako definicja.
Najczęściej myli się PRIMARY KEY z UNIQUE, bo oba dotyczą unikalności. Drugi błąd to wybór "intuicyjnych" nazw typu "MAIN KEY", które nie są składnią SQL. Warto kojarzyć dokładne słowa kluczowe.
W praktyce systemów relacyjnych kolumny wchodzące w skład PRIMARY KEY nie powinny dopuszczać NULL, bo klucz ma jednoznacznie identyfikować rekord. Jeśli widzisz opcję sugerującą NULL w PK, traktuj ją jako sygnał, że to błędne rozumienie roli klucza.
Klucz złożony to PRIMARY KEY zbudowany z kilku kolumn jednocześnie. Stosuje się go, gdy pojedyncza kolumna nie wystarcza do jednoznacznej identyfikacji wiersza, np. gdy unikalność wynika z kombinacji dwóch pól.
Stosuje się go zawsze, gdy tabela przechowuje encje, które muszą mieć jednoznaczny identyfikator (np. użytkownik, produkt, zamówienie). To podstawa relacji między tabelami i spójności danych w aplikacjach internetowych.
Nie. Mechanizmy typu IDENTITY (lub autoinkrementacja) dotyczą zwykle generowania wartości w kolumnie, a nie samego faktu bycia kluczem podstawowym. Kolumna może być jednocześnie generowana automatycznie i oznaczona jako PRIMARY KEY, ale to dwa różne pojęcia.
W SQL elementy takie jak PRIMARY KEY i UNIQUE są najczęściej nazywane ograniczeniami (constraints), bo narzucają reguły na dane. Słowo "atrybut" bywa używane potocznie, ale na egzaminie warto kojarzyć termin "constraint".
info

Około 81% zdających odpowiada poprawnie na to pytanie. średnio łatwe

W praktyce zawodowej kluczowe jest to, że pRIMARY KEY w definicji CREATE TABLE wskazuje kolumnę (lub zestaw kolumn) jednoznacznie identyfikującą każdy wiersz tabeli.

Źródła:

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

Materiały:

  • Dokumentacja wybranego DBMS: sekcja CREATE TABLE i constraints
  • Materiały szkolne z relacyjnych baz danych: klucze (PK/FK) i ograniczenia
  • Ćwiczenia praktyczne: tworzenie tabel z PRIMARY KEY oraz porównanie z UNIQUE

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego