Klucze DBMS: kandydat, super, podstawowy, zagraniczny (przykład)

Spisie treści:

Anonim

Co to są klucze w DBMS?

KLUCZE w DBMS to atrybut lub zestaw atrybutów, który pomaga zidentyfikować wiersz (krotkę) w relacji (tabeli). Pozwalają znaleźć relację między dwiema tabelami. Klucze pomagają jednoznacznie zidentyfikować wiersz w tabeli za pomocą kombinacji jednej lub więcej kolumn w tej tabeli. Klucz jest również pomocny przy znajdowaniu unikatowego rekordu lub wiersza w tabeli. Klucz bazy danych jest również pomocny przy znajdowaniu unikatowego rekordu lub wiersza w tabeli.

Przykład:

numer identyfikacyjny pracownika Imię Nazwisko
11 Andrzej Johnson
22 Tomek Drewno
33 Alex Krzepki

W powyższym przykładzie identyfikator pracownika jest kluczem podstawowym, ponieważ jednoznacznie identyfikuje rekord pracownika. W tej tabeli żaden inny pracownik nie może mieć tego samego identyfikatora pracownika.

W tym samouczku dowiesz się:

  • Co to są klucze?
  • Dlaczego potrzebujemy klucza?
  • Różne klucze w systemie zarządzania bazą danych
  • Co to jest Super Key?
  • Co to jest klucz podstawowy?
  • Co to jest klucz alternatywny?
  • Co to jest klucz kandydata?
  • Co to jest klucz obcy?
  • Co to jest klucz złożony?
  • Co to jest klucz złożony?
  • Co to jest klucz zastępczy?
  • Różnica między kluczem podstawowym a kluczem obcym

Dlaczego potrzebujemy klucza?

Oto kilka powodów, dla których warto używać klucza sql w systemie DBMS.

  • Klucze pomagają zidentyfikować dowolny wiersz danych w tabeli. W rzeczywistej aplikacji tabela może zawierać tysiące rekordów. Ponadto zapisy można było powielać. Klucze zapewniają, że możesz jednoznacznie zidentyfikować rekord tabeli pomimo tych wyzwań.
  • Umożliwia ustanowienie relacji między tabelami i zidentyfikowanie relacji między nimi
  • Pomóż ci wymusić tożsamość i integralność w związku.

Rodzaje kluczy w systemie zarządzania bazą danych

W DBMS występuje głównie siedem różnych typów kluczy, a każdy klucz ma inną funkcjonalność:

  • Super klucz - super klucz to grupa pojedynczych lub wielu kluczy, które identyfikują wiersze w tabeli.
  • Klucz podstawowy - to kolumna lub grupa kolumn w tabeli, które jednoznacznie identyfikują każdy wiersz w tej tabeli.
  • Klucz kandydata - to zestaw atrybutów, które jednoznacznie identyfikują krotki w tabeli. Klucz kandydata to super klucz bez powtarzających się atrybutów.
  • Klucz alternatywny - to kolumna lub grupa kolumn w tabeli, które jednoznacznie identyfikują każdy wiersz w tej tabeli.
  • Klucz obcy - to kolumna, która tworzy relację między dwiema tabelami. Celem kluczy obcych jest zachowanie integralności danych i umożliwienie nawigacji między dwoma różnymi wystąpieniami jednostki.
  • Klucz złożony - ma dwa lub więcej atrybutów, które pozwalają jednoznacznie rozpoznać określony rekord. Jest możliwe, że każda kolumna nie jest sama w sobie unikalna w bazie danych.
  • Klucz złożony - sztuczny klucz, który ma na celu unikalną identyfikację każdego rekordu, nazywany jest kluczem zastępczym. Tego rodzaju klucze są unikalne, ponieważ są tworzone, gdy nie masz naturalnego klucza podstawowego.
  • Klucz zastępczy - sztuczny klucz, który ma na celu unikalną identyfikację każdego rekordu, nazywany jest kluczem zastępczym. Tego rodzaju klucze są unikalne, ponieważ są tworzone, gdy nie masz naturalnego klucza podstawowego.

Co to jest klucz Super?

Superklucz to grupa pojedynczych lub wielu kluczy, które identyfikują wiersze w tabeli. Klucz Super może mieć dodatkowe atrybuty, które nie są potrzebne do unikalnej identyfikacji.

Przykład:

EmpSSN EmpNum Empname
9812345098 AB05 Pokazane
9876512345 AB06 Roslyn
199937890 AB07 James

W powyższym przykładzie nazwy EmpSSN i ​​EmpNum to superklucze.

Co to jest klucz podstawowy?

KLUCZ PODSTAWOWY to kolumna lub grupa kolumn w tabeli, które jednoznacznie identyfikują każdy wiersz w tej tabeli. Klucz podstawowy nie może być zduplikowany, co oznacza, że ​​ta sama wartość nie może pojawić się w tabeli więcej niż raz. Tabela nie może mieć więcej niż jednego klucza podstawowego.

Zasady definiowania klucza podstawowego:

  • Dwa wiersze nie mogą mieć tej samej wartości klucza podstawowego
  • Każdy wiersz musi mieć wartość klucza podstawowego.
  • Pole klucza podstawowego nie może mieć wartości NULL.
  • Wartość w kolumnie klucza podstawowego nie może być nigdy modyfikowana ani aktualizowana, jeśli jakikolwiek klucz obcy odnosi się do tego klucza podstawowego.

Przykład:

W poniższym przykładzie StudID jest kluczem podstawowym.

StudID Roll No Imię Nazwisko E-mail
1 11 Tomek Cena £ Ten adres pocztowy jest chroniony przed spamowaniem. Aby go zobaczyć, konieczne jest włączenie obsługi JavaScript.
2 12 Nacięcie Wright Ten adres pocztowy jest chroniony przed spamowaniem. Aby go zobaczyć, konieczne jest włączenie obsługi JavaScript.
3 13 Dana Natan Ten adres pocztowy jest chroniony przed spamowaniem. Aby go zobaczyć, konieczne jest włączenie obsługi JavaScript.

Co to jest klucz alternatywny?

KLUCZE ALTERNATYWNE to kolumna lub grupa kolumn w tabeli, które jednoznacznie identyfikują każdy wiersz w tej tabeli. Tabela może mieć wiele opcji dla klucza podstawowego, ale tylko jeden może być ustawiony jako klucz podstawowy. Wszystkie klucze, które nie są kluczami podstawowymi, nazywane są kluczami alternatywnymi.

Przykład:

W tej tabeli StudID, Roll No, Email kwalifikują się jako klucz podstawowy. Ale ponieważ StudID jest kluczem podstawowym, Roll No, Email staje się kluczem alternatywnym.

StudID Roll No Imię Nazwisko E-mail
1 11 Tomek Cena £ Ten adres pocztowy jest chroniony przed spamowaniem. Aby go zobaczyć, konieczne jest włączenie obsługi JavaScript.
2 12 Nacięcie Wright Ten adres pocztowy jest chroniony przed spamowaniem. Aby go zobaczyć, konieczne jest włączenie obsługi JavaScript.
3 13 Dana Natan Ten adres pocztowy jest chroniony przed spamowaniem. Aby go zobaczyć, konieczne jest włączenie obsługi JavaScript.

Co to jest klucz kandydata?

CANDIDATE KEY to zestaw atrybutów, które jednoznacznie identyfikują krotki w tabeli. Klucz kandydata to super klucz bez powtarzających się atrybutów. Klucz podstawowy należy wybrać spośród kluczy kandydujących. Każda tabela musi mieć co najmniej jeden klucz kandydujący. Tabela może mieć wiele kluczy kandydujących, ale tylko jeden klucz podstawowy.

Właściwości klucza kandydata:

  • Musi zawierać unikalne wartości
  • Klucz kandydata może mieć wiele atrybutów
  • Nie może zawierać wartości null
  • Powinien zawierać minimum pól, aby zapewnić unikalność
  • Unikalnie zidentyfikuj każdy rekord w tabeli

Przykład: W podanej tabeli Stud ID, Roll No i email są kluczami kandydatów, które pomagają nam jednoznacznie zidentyfikować rekord ucznia w tabeli.

StudID Roll No Imię Nazwisko E-mail
1 11 Tomek Cena £ Ten adres pocztowy jest chroniony przed spamowaniem. Aby go zobaczyć, konieczne jest włączenie obsługi JavaScript.
2 12 Nacięcie Wright Ten adres pocztowy jest chroniony przed spamowaniem. Aby go zobaczyć, konieczne jest włączenie obsługi JavaScript.
3 13 Dana Natan Ten adres pocztowy jest chroniony przed spamowaniem. Aby go zobaczyć, konieczne jest włączenie obsługi JavaScript.

Co to jest klucz obcy?

KLUCZ OBCY to kolumna, która tworzy relację między dwiema tabelami. Celem kluczy obcych jest zachowanie integralności danych i umożliwienie nawigacji między dwoma różnymi wystąpieniami jednostki. Działa jako odsyłacz między dwiema tabelami, ponieważ odwołuje się do klucza podstawowego innej tabeli.

Przykład:

DeptCode DeptName
001 Nauka
002 język angielski
005 Komputer
ID nauczyciela Fname Lname
B002 David Warner
B017 Sara Józefa
B009 Mikrofon Brunton

W tym kluczu w przykładzie dbms mamy dwie tabele, nauczanie i dział w szkole. Jednak nie ma sposobu, aby sprawdzić, które wyszukiwanie działa w którym dziale.

W tej tabeli, dodając klucz obcy w Deptcode do nazwy nauczyciela, możemy utworzyć relację między dwiema tabelami.

ID nauczyciela DeptCode Fname Lname
B002 002 David Warner
B017 002 Sara Józefa
B009 001 Mikrofon Brunton

Ta koncepcja jest również znana jako integralność referencyjna.

Co to jest klucz złożony?

KLUCZ ZŁOŻONY ma dwa lub więcej atrybutów, które pozwalają jednoznacznie rozpoznać określony rekord. Jest możliwe, że każda kolumna nie jest sama w sobie unikalna w bazie danych. Jednak w połączeniu z innymi kolumnami lub kolumnami kombinacja kluczy złożonych staje się unikatowa. Celem klucza złożonego w bazie danych jest jednoznaczna identyfikacja każdego rekordu w tabeli.

Przykład:

Numer zamówienia PorductID Nazwa produktu Ilość
B005 JAP102459 Mysz 5
B005 DKT321573 USB 10
B005 OMG446789 Monitor LCD 20
B004 DKT321573 USB 15
B002 OMG446789 Drukarka laserowa 3

W tym przykładzie OrderNo i ProductID nie mogą być kluczem podstawowym, ponieważ nie identyfikują jednoznacznie rekordu. Można jednak użyć klucza złożonego identyfikatora zamówienia i identyfikatora produktu, ponieważ jednoznacznie identyfikuje każdy rekord.

Co to jest klucz złożony?

KLUCZ ZŁOŻONY to połączenie dwóch lub więcej kolumn, które jednoznacznie identyfikują wiersze w tabeli. Połączenie kolumn gwarantuje niepowtarzalność, choć nie gwarantujemy niepowtarzalności indywidualnie. W związku z tym są one łączone, aby jednoznacznie identyfikować rekordy w tabeli.

Różnica między kluczem złożonym a złożonym polega na tym, że dowolna część klucza złożonego może być kluczem obcym, ale klucz złożony może, ale nie musi, być częścią klucza obcego.

Co to jest klucz zastępczy?

KLUCZE SURROGATE to sztuczny klucz, który ma na celu unikalną identyfikację każdego rekordu, nazywany jest kluczem zastępczym. Ten rodzaj klucza częściowego w dbms jest unikalny, ponieważ jest tworzony, gdy nie masz naturalnego klucza podstawowego. Nie nadają one znaczenia danym w tabeli. Klucz zastępczy jest zwykle liczbą całkowitą. Klucz zastępczy to wartość wygenerowana tuż przed wstawieniem rekordu do tabeli.

Fname Nazwisko Czas rozpoczęcia Koniec czasu
Anne Kowal 09:00 18:00
Jacek Francis 08:00 17:00
Ania McLean 11:00 20:00
Pokazane Willam 14:00 23:00

Powyższy przykład pokazał czasy zmian różnych pracowników. W tym przykładzie do jednoznacznej identyfikacji każdego pracownika potrzebny jest klucz zastępczy.

Klucze zastępcze w sql są dozwolone, gdy

  • Żadna właściwość nie ma parametru klucza podstawowego.
  • W tabeli, gdy klucz podstawowy jest zbyt duży lub skomplikowany.

Różnica między kluczem podstawowym a kluczem obcym

Klucz podstawowy Klucz obcy
Pomaga jednoznacznie zidentyfikować rekord w tabeli. Jest to pole w tabeli, które jest kluczem podstawowym innej tabeli.
Klucz podstawowy nigdy nie akceptuje wartości null. Klucz obcy może akceptować wiele wartości null.
Klucz podstawowy to indeks klastrowy, a dane w tabeli DBMS są fizycznie uporządkowane w kolejności indeksu klastrowego. Klucz obcy nie może automatycznie utworzyć indeksu, klastrowego lub nieklastrowego. Możesz jednak ręcznie utworzyć indeks na kluczu obcym.
Możesz mieć pojedynczy klucz podstawowy w tabeli. W tabeli możesz mieć wiele kluczy obcych.

Podsumowanie

  • Klucz w SQL to atrybut lub zestaw atrybutów, który pomaga zidentyfikować wiersz (krotkę) w relacji (tabeli)
  • Klucze DBMS umożliwiają ustanowienie relacji i identyfikację relacji między tabelami
  • Siedem typów kluczy DBMS to: Super, Primary, Candidate, Alternate, Foreign, Compound, Composite i Surrogate.
  • Super klucz to grupa pojedynczych lub wielu kluczy, które identyfikują wiersze w tabeli.
  • Kolumna lub grupa kolumn w tabeli, która pomaga nam jednoznacznie zidentyfikować każdy wiersz w tej tabeli, nazywana jest kluczem podstawowym
  • Wszystkie klucze, które nie są kluczami podstawowymi, nazywane są kluczami alternatywnymi
  • Super klucz bez powtarzającego się atrybutu nazywany jest kluczem kandydującym
  • Klucz złożony to klucz, który ma wiele pól, które pozwalają jednoznacznie rozpoznać określony rekord
  • Klucz, który ma wiele atrybutów do jednoznacznego identyfikowania wierszy w tabeli, nazywany jest kluczem złożonym
  • Sztuczny klucz, który ma na celu unikalną identyfikację każdego rekordu, nazywany jest kluczem zastępczym
  • Klucz podstawowy nigdy nie akceptuje wartości null, podczas gdy klucz obcy może akceptować wiele wartości null.