Przejdź do głównej treści
  1. Strona główna
  2. Słownik
  3. INF.03
  4. Klucz główny w SQL

Klucz główny w SQL

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Klucz główny (PRIMARY KEY) to kolumna lub zestaw kolumn, które jednoznacznie identyfikują każdy rekord w tabeli. Jest podstawowym mechanizmem zapewniania integralności encji w bazie danych.

Infografika przedstawiająca klucz główny w SQL: centralna tabela pracownicy z wyróżnioną kolumną id jako PRIMARY KEY ze złotą ikoną klucza.

Cechy klucza głównego

Klucz główny:

  • musi mieć wartości unikalne,
  • nie może zawierać wartości NULL,
  • w jednej tabeli może być tylko jeden klucz główny,
  • może składać się z jednej lub kilku kolumn.

Przykład klucza głównego z jednej kolumny:

CREATE TABLE produkty (
    id_produktu INT PRIMARY KEY,
    nazwa VARCHAR(100),
    cena DECIMAL(10,2)
);

W tym przykładzie id_produktu identyfikuje każdy produkt.

Klucz główny złożony

Klucz główny może obejmować więcej niż jedną kolumnę:

CREATE TABLE zapisy (
    id_ucznia INT,
    id_kursu INT,
    data_zapisu DATE,
    PRIMARY KEY (id_ucznia, id_kursu)
);

Taki klucz oznacza, że para wartości id_ucznia i id_kursu musi być unikalna.

Czy klucz główny musi być liczbą?

Nie. Klucz główny często jest liczbą całkowitą, np. INT AUTO_INCREMENT, ale nie jest to obowiązkowe. Może być też tekstem, np. numerem PESEL, kodem produktu albo identyfikatorem UUID.

Znaczenie egzaminacyjne

W pytaniach o integralność encji poprawna odpowiedź zwykle wskazuje na konieczność zdefiniowania klucza głównego dla tabeli.