W Bibliotece spotkasz trzy rodzaje katalogów. Wyglądają podobnie, ale różnią się surowością reguł. Poznajmy je od najmocniejszego.
To najściślejszy katalog - sygnatura główna każdego zwoju. Reguły:
NULL.Najczęściej to kolumna
id. To ona jednoznacznie wskazuje wiersz, jak numer katalogowy zwoju.1SELECT * FROM autorzy WHERE id = 3;Trochę luźniejszy. Też pilnuje unikalności, ale:
NULL (w MySQL może ich być wiele).Idealny dla kolumn takich jak
email - każdy adres inny, ale tabela ma już swój klucz główny gdzie indziej.Najłagodniejszy katalog. Nie pilnuje unikalności - dopuszcza powtórzenia. Jego jedynym zadaniem jest przyspieszenie wyszukiwania.
Świetnie sprawdza się na kolumnie
autor_id w tabeli ksiazki - jeden autor może mieć wiele książek, więc wartości się powtarzają, ale chcemy je szybko odnajdywać.| Rodzaj | Unikalny? | NULL? | Ile na tabelę | |--------|-----------|-------|----------------| | PRIMARY KEY | tak | nie | jeden | | UNIQUE | tak | tak | wiele | | INDEX | nie | tak | wiele |
Zapamiętaj: wszystkie trzy przyspieszają odczyt, ale tylko dwa pierwsze wymuszają unikalność.