Różnica między kluczem podstawowym a kluczem kandydującym

Autor: Laura McKinney
Data Utworzenia: 1 Kwiecień 2021
Data Aktualizacji: 3 Lipiec 2024
Anonim
Różnica między kluczem podstawowym a kluczem kandydującym - Technologia
Różnica między kluczem podstawowym a kluczem kandydującym - Technologia

Zawartość


Klucze są atrybutem lub zestawem atrybutów, które są używane do uzyskiwania dostępu do krotek z tabeli lub są również używane do budowania relacji między dwiema tabelami. W tym artykule omówimy klucz podstawowy i klucz kandydata oraz różnice między nimi. Zarówno klucz podstawowy, jak i klucz kandydujący jednoznacznie identyfikują krotkę w relacji lub tabeli. Ale najważniejszą rzeczą, która je odróżnia, jest to, że może być tylko jeden główny klucz w związku. Może być jednak więcej niż jeden Klucz kandydata w związku.

Jest jeszcze kilka różnic między kluczem podstawowym a kluczem kandydującym, które omówię za pomocą poniższej tabeli porównawczej.

  1. Wykres porównania
  2. Definicja
  3. Kluczowe różnice
  4. Wniosek

Wykres porównania

Podstawa do porównaniaGłówny kluczKlucz kandydata
PodstawowyW każdej relacji może być tylko jeden klucz podstawowy.W relacji może znajdować się więcej niż jeden klucz kandydujący.
ZEROŻaden atrybut klucza podstawowego nie może zawierać wartości NULL.Atrybut klucza kandydata może mieć wartość NULL.
SprecyzowaćOpcjonalne jest określenie klucza podstawowego dla dowolnej relacji.Relacja nie może być określona bez klucza kandydata.
FunkcjaKlucz podstawowy opisuje najważniejszy atrybut relacji.Klucze kandydujące przedstawiają kandydatów, którzy mogą kwalifikować się do otrzymania klucza podstawowego.
NawzajemKlucz podstawowy to klucz kandydujący.Ale nie jest obowiązkowe, aby każdy klucz kandydujący mógł być kluczem podstawowym.


Definicja klucza podstawowego

Główny klucz jest atrybutem lub zestawem atrybutów, które jednoznacznie identyfikują każdą krotkę w relacji. Może być tylko jeden klucz podstawowy dla każdej relacji. Należy zadbać o to, aby klucz podstawowy był nigdy zawierają ZERO wartość i musi mieć wyjątkowy wartość dla każdej krotki w relacji. Wartości atrybutu / kluczy klucza podstawowego muszą wynosić statyczny, tj. wartość atrybutu nie powinna się nigdy lub rzadko zmieniać.

Jeden z Klucze kandydata kwalifikuje się, aby stać się kluczem podstawowym. The zasady że klucz kandydujący musi się kwalifikować, aby stać się podstawowym, że kluczowa wartość nigdy nie powinna być ZERO i musi być wyjątkowy dla wszystkich krotek.

Jeśli relacja zawiera atrybut, który jest kluczem podstawowym innej relacji, wówczas ten atrybut jest wywoływany klucz obcy.


Zaleca się ustalenie klucza podstawowego relacji przed wprowadzeniem innych atrybutów relacji, ponieważ klucz podstawowy jednoznacznie identyfikuje każdą krotkę. Lepiej wybrać pojedynczy atrybut lub niewielką liczbę atrybutów jako klucz podstawowy, który ułatwia obsługę relacji.

Zobaczmy teraz przykład klucza podstawowego.

Student {ID, imię, nazwisko, wiek, adres}

Tutaj najpierw wymyślimy klucze kandydatów. Zrozumiałem dwa klucze kandydatów {ID} i {Imię Nazwisko} ponieważ będą jednoznacznie identyfikować każdego ucznia w relacji Uczeń. Teraz tutaj wybiorę ID jako mój główny klucz, ponieważ czasami może się zdarzyć, że dwóch studentów może mieć takie same imię i nazwisko, więc łatwo będzie wyśledzić ucznia za pomocą jego ID.

Definicja klucza kandydującego

ZA Klucz kandydata jest atrybutem lub zestawem atrybutów, które jednoznacznie definiują krotkę w relacji. Tam jest więcej niż jeden klucz kandydata w relacji. Te klucze kandydujące to kandydaci, którzy mogą kwalifikować się do otrzymania klucza podstawowego.

Chociaż każdy klucz kandydujący kwalifikuje się na klucz podstawowy, tylko jeden można wybrać jako klucz podstawowy. Reguły, według których klucz kandydujący musi zostać kluczem podstawowym, nigdy nie mogą być wartością atrybutu klucza ZERO w dowolnej domenie klucza musi to być wyjątkowy i statyczny.

Jeśli wszystkie klucze kandydujące kwalifikują się na klucz podstawowy, oznacza to doświadczony DBA musi podjąć decyzję o znalezieniu klucza podstawowego. Relacja nigdy nie może istnieć bez klucza kandydata.

Pozwól nam zrozumieć przykład klucza kandydata. Jeśli dodamy więcej atrybutów do relacji Ucznia, omówiłem powyżej.

Student {ID, imię, nazwisko, wiek, adres, DOB, nazwa działu}

Tutaj mogę się dowiedzieć dwa klucze kandydujące, które są {ID}, {Imię, Nazwisko, DOB}. Możesz więc zrozumieć, że klucze kandydujące to takie, które jednoznacznie identyfikują krotkę w relacji.

  1. Podstawową kwestią odróżniającą klucz podstawowy od klucza kandydującego jest to, że może istnieć tylko jeden element podstawowy dla dowolnej relacji w schemacie. Jednak może istnieć wiele kluczy kandydujących dla jednej relacji.
  2. Atrybut pod kluczem podstawowym nigdy nie może zawierać wartości NULL, ponieważ główną funkcją klucza podstawowego jest jednoznaczna identyfikacja rekordu w relacji. Nawet klucz podstawowy może być używany jako klucz obcy w innej relacji, a zatem nie może mieć wartości NULL, aby relacja odniesienia mogła znaleźć krotki w relacji odniesienia. Klucz kandydujący może mieć wartość NULL, chyba że ograniczenie atrybutu nie jest określone jako null.
  3. Określenie klucza podstawowego jest opcjonalne, ale relacja nie może istnieć bez kluczy kandydujących.
  4. Klucz podstawowy opisuje unikalny i najważniejszy atrybut relacji, podczas gdy klucze kandydujące zapewniają kandydatów, spośród których można wybrać jeden jako klucz podstawowy.
  5. Każdy klucz podstawowy jest kluczem kandydującym, ale odwrotnie nie jest prawdą.

Wniosek:

Opcjonalne jest, aby relacja określała klucz podstawowy. Z drugiej strony, jeśli deklarujesz relację, klucze kandydujące muszą być obecne w tej relacji, aby zbudować dobrą relację.