KWALIFIKACJA INF3 - WRZESIEŃ 2015

PYTANIE NR 16.
Wartość pola tabeli pełniącego rolę klucza podstawowego
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Klucz podstawowy służy do jednoznacznej identyfikacji każdego rekordu w tabeli, więc wartość pola pełniącego tę rolę nie może się powtarzać między wierszami. Typ danych nie musi być numeryczny, klucz nie ma nic wspólnego z szyfrowaniem, a w praktyce wartość klucza podstawowego nie powinna być pusta (NULL).

Pełne wyjaśnienie:

Klucz podstawowy (PRIMARY KEY) to atrybut lub zestaw atrybutów, których zadaniem jest jednoznaczna identyfikacja każdego wiersza (rekordu) w tabeli. Z tego powodu poprawne jest stwierdzenie, że wartość pola pełniącego rolę klucza podstawowego musi być unikalna — dwa różne rekordy nie mogą mieć tego samego identyfikatora.

Stwierdzenie "jest zawsze typu numerycznego" jest błędne, ponieważ klucz podstawowy może mieć różne typy danych (np. liczby, tekst, UUID), o ile zapewnia unikalność i stabilność identyfikacji. Często spotyka się kolumny typu liczbowego (np. ID), ale to tylko popularna praktyka projektowa, a nie reguła.

Odpowiedź "służy do szyfrowania zawartości tabeli" wynika z mylenia znaczenia słowa "klucz" z kryptografią. W bazach danych klucz podstawowy nie szyfruje danych; jest mechanizmem logicznym (ograniczeniem integralności) pomagającym utrzymać porządek i spójność danych oraz budować relacje (np. przez klucze obce).

Stwierdzenie "może przyjmować wartość pustą (NULL)" jest nieprawidłowe w typowym rozumieniu klucza podstawowego: identyfikator rekordu nie może być "nieznany", bo nie spełniałby swojej funkcji. W praktyce DBMS wymagają, aby kolumna/e klucza podstawowego były niepuste, co zapobiega tworzeniu rekordów bez identyfikatora.

Wskazówka egzaminacyjna: jeśli w odpowiedziach pojawia się unikalność, NULL oraz "zawsze typ numeryczny", to zwykle sprawdzana jest rola identyfikacyjna klucza podstawowego, a nie dobór konkretnego typu danych.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Klucz podstawowy (PRIMARY KEY) to kolumna lub zestaw kolumn, które jednoznacznie identyfikują każdy rekord w tabeli. Dzięki temu można odróżnić wiersze, tworzyć relacje między tabelami i pilnować spójności danych.
Bo klucz podstawowy pełni rolę identyfikatora rekordu. Gdyby wartości się powtarzały, nie dałoby się jednoznacznie wskazać konkretnego wiersza, co utrudnia aktualizacje, usuwanie danych i tworzenie relacji z innymi tabelami.
W praktyce nie powinien, ponieważ rekord bez identyfikatora nie spełnia celu PRIMARY KEY. Typowe systemy DBMS wymagają, aby kolumny należące do klucza podstawowego były niepuste, co zapobiega wstawieniu wiersza "bez klucza".
Nie. Klucz podstawowy może być liczbą, tekstem lub innym typem (np. UUID), o ile zapewnia unikalność i jest sensowny w projekcie. Liczbowe ID są popularne, ale to konwencja, a nie obowiązek wynikający z definicji PRIMARY KEY.
PRIMARY KEY identyfikuje rekord i jest "głównym" kluczem tabeli; tabela ma zwykle jeden PRIMARY KEY (czasem złożony). UNIQUE to ograniczenie unikalności, których w jednej tabeli może być wiele i które nie muszą pełnić roli głównego identyfikatora.
Klucz złożony to PRIMARY KEY utworzony z kilku kolumn. Unikalna musi być wtedy kombinacja wartości tych kolumn, a nie każda kolumna osobno. Stosuje się go np. w tabelach łączących relacje wiele-do-wielu.
UUID bywa przydatny, gdy identyfikatory mają powstawać niezależnie w wielu systemach lub offline (mniejsze ryzyko kolizji niż przy prostych numerach z kilku źródeł). Trzeba jednak brać pod uwagę wydajność i rozmiar indeksów.
Typowe błędy to: zakładanie, że klucz "musi być liczbą", wybieranie niestabilnych danych (np. e-mail, który może się zmienić) jako PRIMARY KEY, dopuszczanie duplikatów przez brak constraintu oraz mylenie pojęcia "klucz" z szyfrowaniem.
W relacyjnych bazach "klucz" to pojęcie z teorii relacji: atrybuty identyfikujące rekordy i relacje między tabelami. Szyfrowanie to osobny mechanizm bezpieczeństwa (np. szyfrowanie kolumn/dysków), niezwiązany z PRIMARY KEY.
Ćwicz tworzenie tabel z ograniczeniami (PRIMARY KEY, UNIQUE, NOT NULL), projektuj proste relacje i sprawdzaj, jak DBMS reaguje na duplikaty oraz wartości NULL. Pomaga też rysowanie schematów ERD i tłumaczenie roli kluczy własnymi słowami.
info

To pytanie poprawnie rozwiązuje 72% zdających egzamin. średnio łatwe

Specjaliści zwracają uwagę: "Klucz podstawowy służy do jednoznacznej identyfikacji każdego rekordu w tabeli, więc wartość pola pełniącego tę rolę nie może się powtarzać między wierszami."

Źródła:

  • PostgreSQL Documentation: "CREATE TABLE" / Constraints / PRIMARY KEY — https://www.postgresql.org/docs/current/ddl-constraints.html (dostęp: 2026-03-04)
  • MySQL 8.0 Reference Manual: "CREATE TABLE" / PRIMARY KEY — https://dev.mysql.com/doc/refman/8.0/en/create-table.html (dostęp: 2026-03-04)
  • Microsoft Learn: SQL Server "PRIMARY KEY constraints" — https://learn.microsoft.com/en-us/sql/relational-databases/tables/primary-and-foreign-key-constraints (dostęp: 2026-03-04)

Materiały:

  • Dokumentacja wybranego DBMS (MySQL/PostgreSQL/SQL Server) o PRIMARY KEY i constraints
  • Kurs SQL obejmujący projektowanie tabel i klucze
  • Materiały o normalizacji i modelowaniu relacyjnym (ERD)

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego