Przejdź do treści głównej
INF.03Bazy Danych

Klucz główny (PRIMARY KEY)

Jedno lub więcej pól w tabeli, które jednoznacznie identyfikują każdy rekord. Wartości muszą być unikalne i nie mogą być równe NULL.

Co to jest klucz główny?

Klucz główny (PRIMARY KEY) to atrybut (lub grupa atrybutów), który unikalnie identyfikuje każdy wiersz w tabeli relacyjnej bazy danych.

Kluczowe właściwości:

  1. Unikalność (UNIQUE) – w całej tabeli nie mogą istnieć dwa wiersze o tej samej wartości klucza.
  2. Brak wartości pustych (NOT NULL) – klucz główny nie może nigdy zawierać wartości NULL.
  3. Tylko jeden na tabelę – tabela może posiadać wyłącznie jeden klucz główny (może on być jednak kluczem złożonym z kilku kolumn).
SQL
CREATE TABLE uzytkownicy (
    id INT AUTO_INCREMENT PRIMARY KEY,
    login VARCHAR(50) NOT NULL UNIQUE,
    email VARCHAR(100) NOT NULL
);

Klucz prosty a klucz złożony (kompozytowy):

  • Prosty: pojedyncza kolumna, np. id INT PRIMARY KEY.
  • Złożony: kombinacja co najmniej dwóch kolumn (np. w tabeli łączącej dla relacji N:M):
SQL
CREATE TABLE oceny (
    id_studenta INT,
    id_przedmiotu INT,
    ocena INT,
    PRIMARY KEY (id_studenta, id_przedmiotu)
);

Najczęstsze pułapki na egzaminie INF.03:

  • Pamiętaj, że klucz główny automatycznie tworzy unikalny indeks B-drzewa na wyznaczonej kolumnie.
  • Na egzaminie często pojawia się pytanie, czy klucz główny może przyjmować wartość NULL – odpowiedź brzmi: nigdy!

Chcesz sprawdzić to pojęcie w praktyce?

Przeszukaj pytania z oficjalnych arkuszy CKE powiązane z hasłem Klucz główny (PRIMARY KEY) lub rozpocznij trening.