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.

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.