Klucz kandydujący to kombinacja atrybutów, które jednoznacznie identyfikują rekord bazy danych bez odwoływania się do innych danych. Każda tabela może mieć jednego lub więcej kandydatów. Jeden z tych kluczy kandydujących jest wybrany jako klucz podstawowy tabeli. Tabela zawiera tylko jeden klucz podstawowy, ale może zawierać kilka kluczy kandydujących. Jeśli klucz kandydujący składa się z dwóch lub więcej kolumn, nazywa się go kluczem złożonym.
Właściwości klucza kandydata
Wszystkie klucze kandydujące mają pewne wspólne właściwości. Jedną z właściwości jest to, że przez okres istnienia klucza kandydującego atrybut używany do identyfikacji musi pozostać taki sam. Innym jest to, że wartość nie może być null. Wreszcie klucz kandydujący musi być unikalny.
Na przykład, aby konkretnie i jednoznacznie zidentyfikować każdego pracownika, firma może użyć numeru ubezpieczenia społecznego pracownika. Niektóre osoby mają te same imiona, nazwiska i stanowiska, ale nie ma dwóch osób korzystających z tego samego numeru ubezpieczenia społecznego.
Numer ubezpieczenia społecznego | Imię | Nazwisko | Pozycja |
---|---|---|---|
123-45-6780 | Craig | Jones | Menedżer |
234-56-7890 | Craig | Beal | Współpracownik |
345-67-8900 | Sandra | Beal | Menedżer |
456-78-9010 | Trina | Jones | Współpracownik |
567-89-0120 | Sandra | Kowalski | Współpracownik |
Przykłady kluczy kandydatów
Niektóre typy danych łatwo nadają się na kandydatów:
- Międzynarodowe standardowe numery książek: Numery ISBN jednoznacznie identyfikują książki i powiązane media. Wydawanie numerów ISBN jest ściśle regulowane przez branżowych strażników, a wydawcy nigdy nie wykorzystują numerów ISBN.
- Numery kont bankowych: Większość banków nie przetwarza numerów kont.
- Numery seryjne: Chociaż numery seryjne nie są regulowane w różnych branżach, w kontekście jednego dostawcy numer seryjny powinien być zawsze niepowtarzalny.
- Numery prawa jazdy: Zazwyczaj te numery nie są duplikowane. Jednak osoba, która przenosi się ze stanu do stanu, może mieć więcej niż jeden numer DL.
- National Provider ID: Lekarze i inni licencjonowani dostawcy usług medycznych mają co najmniej jeden NPI, który jest dla nich unikalny, wydany przez Departament Zdrowia i Opieki Społecznej Stanów Zjednoczonych.
Jednak niektóre rodzaje informacji, które mogą wydawać się dobrymi kandydatami, w rzeczywistości okazują się problematyczne:
- Numery telefonów: Większość operatorów przetwarza numery telefonów, a poszczególni abonenci mogą korzystać z kilku numerów telefonów jednocześnie.
- Uniwersalne kody cen: UPC są unikalne, ale właściciel bloku UPC może dowolnie przetwarzać produkty.
- Numery dokumentacji medycznej: Numery MRN są na ogół wydawane na poziomie szpitala, bez jakichkolwiek krajowych wytycznych dotyczących struktury i formatu tych identyfikatorów.
- Numery ubezpieczenia społecznego: Chociaż teoretycznie są unikalne, SSN są poddawane recyklingowi, a oszustwa SSN są na tyle powszechne, że ten identyfikator jest problematyczny w przypadku dużych zbiorów danych. (W kontekście pracodawcy, który weryfikuje numery SSN, to wyzwanie nie stanowi problemu.)