Klucze są jednym z podstawowych wymagań modelu relacyjnej bazy danych. Jest szeroko stosowany do jednoznacznej identyfikacji krotek (wierszy) w tabeli. Klawiszy używamy także do konfigurowania relacji pomiędzy różnymi kolumnami i tabelami relacyjnej bazy danych.
Różne typy kluczy baz danych
- Klucz kandydata
- Główny klucz
- Super klucz
- Klucz alternatywny
- Klucz obcy
- Klucz kompozytowy
Klucz kandydata
Minimalny zestaw atrybutów, który może jednoznacznie zidentyfikować krotkę, nazywany jest kluczem kandydującym. Na przykład STUD_NO w relacji STUDENT.
- To minimalny super klucz.
- Jest to superklucz bez powtarzających się danych, nazywany kluczem kandydującym.
- Minimalny zestaw atrybutów, który może jednoznacznie zidentyfikować rekord.
- Musi zawierać unikalne wartości.
- Może zawierać wartości NULL.
- Każda tabela musi mieć co najmniej jeden klucz kandydujący.
- Tabela może mieć wiele kluczy kandydujących, ale tylko jeden klucz podstawowy.
- Wartość klucza kandydata jest unikalna i może mieć wartość null w przypadku krotki.
- W relacji może istnieć więcej niż jeden klucz kandydujący.
Przykład:
pokrój Javę
STUD_NO is the candidate key for relation STUDENT.>
Stół STUDENT
STUD_NO | PSTRYKNĄĆ | ADRES | TELEFON |
---|---|---|---|
1 | Shyam | Delhi | 123456789 |
2 | Rakesh | Kalkuta | 223365796 |
3 | Suraj | Delhi | 175468965 |
- Klucz kandydujący może być prosty (posiadający tylko jeden atrybut) lub również złożony.
Przykład:
{STUD_NO, COURSE_NO} is a composite candidate key for relation STUDENT_COURSE.>
Tabela STUDENT_COURSE
STUD_NO | NAUCZYCIEL_NIE | KURS_NIE |
---|---|---|
1 | 001 | C001 |
2 | 056 | C005 |
Notatka: W SQL Serwer unikalne ograniczenie, które ma kolumnę dopuszczającą wartość null, pozwala wartość ' zero „w tej kolumnie tylko raz . Dlatego atrybut STUD_PHONE jest tutaj kandydatem, ale nie może mieć wartości „null” w atrybucie klucza podstawowego.
Główny klucz
Może istnieć więcej niż jeden klucz kandydujący, z którego można wybrać jeden jako klucz podstawowy. Na przykład STUD_NO i STUD_PHONE są kluczami kandydującymi do relacji STUDENT, ale STUD_NO można wybrać jako główny klucz (tylko jeden z wielu kluczy kandydujących).
- To unikalny klucz.
- Może zidentyfikować tylko jedną krotkę (rekord) na raz.
- Nie ma zduplikowanych wartości, ma unikalne wartości.
- Nie może mieć wartości NULL.
- Klucze podstawowe niekoniecznie muszą być pojedynczą kolumną; więcej niż jedna kolumna może być również kluczem podstawowym tabeli.
Przykład:
STUDENT table ->Student(STUD_NO, SNAME, ADRES, TELEFON), STUD_NO to klucz podstawowy>
Stół STUDENT
testowanie i typy oprogramowania
STUD_NO | PSTRYKNĄĆ | ADRES | TELEFON |
---|---|---|---|
1 | Shyam | Delhi | 123456789 |
2 | Rakesh | Kalkuta | 223365796 |
3 | Suraj | Delhi | 175468965 |
Super klucz
Zestaw atrybutów, które mogą jednoznacznie zidentyfikować krotkę, nazywany jest super kluczem. Na przykład STUD_NO, (STUD_NO, STUD_NAME) itp. Super klucz to grupa pojedynczych lub wielu kluczy identyfikujących wiersze w tabeli. Obsługuje wartości NULL.
- Dodanie zera lub więcej atrybutów do klucza kandydującego generuje superklucz.
- Klucz kandydujący jest superkluczem, ale odwrotnie, nie jest to prawdą.
- Wartości superklucza mogą również mieć wartość NULL.
Przykład:
Consider the table shown above. STUD_NO+PHONE is a super key .>

Relacja pomiędzy kluczem podstawowym, kluczem kandydującym i kluczem super
Klucz alternatywny
Klucz kandydujący inny niż klucz podstawowy nazywany jest kluczem klucz alternatywny .
- Wszystkie klucze, które nie są kluczami podstawowymi, nazywane są kluczami alternatywnymi.
- Jest to klucz wtórny.
- Zawiera dwa lub więcej pól identyfikujących dwa lub więcej rekordów.
- Wartości te się powtarzają.
- Np.: - SNAME i ADDRESS to klucze alternatywne
Przykład:
Consider the table shown above. STUD_NO, as well as PHONE both, are candidate keys for relation STUDENT but PHONE will be an alternate key (only one out of many candidate keys).>

Klucz podstawowy, klucz kandydujący i klucz alternatywny
Klucz obcy
Jeśli atrybut może przyjmować tylko wartości, które są obecne jako wartości innego atrybutu, będzie to a klucz obcy do atrybutu, do którego się odnosi. Relacja, do której się odwołujemy, nazywana jest relacją referencyjną, a odpowiadający jej atrybut nazywany jest atrybutem referencyjnym. Odwoływany atrybut relacji, do której się odwołujemy, powinien być jej kluczem podstawowym.
- Jest to klucz, który pełni rolę klucza podstawowego w jednej tabeli i jako taki pełni funkcję
klucz dodatkowy w innej tabeli. - Łączy jednocześnie dwie lub więcej relacji (tabel).
- Stanowią one odnośnik pomiędzy tabelami.
- Na przykład DNO jest kluczem podstawowym w tabeli DEPT i kluczem niebędącym kluczem w EMP
Przykład:
Refer Table STUDENT shown above. STUD_NO in STUDENT_COURSE is a foreign key to STUD_NO in STUDENT relation.>
Tabela STUDENT_COURSE
STUD_NO | NAUCZYCIEL_NIE | KURS_NIE |
---|---|---|
1 | 005 | C001 |
2 | 056 | C005 |
Warto zauważyć, że w przeciwieństwie do klucza podstawowego dowolnej relacji, klucz obcy może mieć wartość NULL, a także może zawierać zduplikowane krotki, tj. nie musi przestrzegać ograniczenia niepowtarzalności. Na przykład STUD_NO w relacji STUDENT_COURSE nie jest unikalne. Powtórzono to dla pierwszej i trzeciej krotki. Jednakże STUD_NO w relacji STUDENT jest kluczem podstawowym i musi być zawsze unikalny i nie może mieć wartości null.
zablokować aplikację na Androida

Relacja pomiędzy kluczem podstawowym a kluczem obcym
Klucz kompozytowy
Czasami tabela może nie mieć pojedynczej kolumny/atrybutu, który jednoznacznie identyfikuje wszystkie rekordy tabeli. Aby jednoznacznie zidentyfikować wiersze tabeli, można zastosować kombinację dwóch lub więcej kolumn/atrybutów. W rzadkich przypadkach nadal może dawać zduplikowane wartości. Musimy więc znaleźć optymalny zestaw atrybutów, który będzie w stanie jednoznacznie zidentyfikować wiersze w tabeli.
- Działa jako klucz podstawowy, jeśli w tabeli nie ma klucza podstawowego
- Aby utworzyć a., używane są razem dwa lub więcej atrybutów klucz złożony .
- Różne kombinacje atrybutów mogą dawać różną dokładność w zakresie jednoznacznej identyfikacji wierszy.
Przykład:
FULLNAME + DOB can be combined together to access the details of a student.>

Różne typy kluczy
Wniosek
Podsumowując, model relacyjny wykorzystuje wiele kluczy: klucze kandydujące pozwalają na odrębną identyfikację, klucz podstawowy służy jako wybrany identyfikator, klucze alternatywne oferują inne możliwości, a klucze obce tworzą istotne powiązania, które gwarantują integralność danych między tabelami. Tworzenie silnych i efektywnych relacyjnych baz danych wymaga przemyślanego zastosowania tych kluczy.
hostowanie Linuksa
Często zadawane pytania dotyczące typów kluczy w modelu relacyjnym
P.1: Dlaczego klucze są potrzebne w systemie DBMS?
Odpowiedź:
Klucze są jednym z ważnych aspektów DBMS. Klucze pomagają nam znaleźć krotki (wiersze) w tabeli. Służy również do rozwijania różnych relacji między kolumnami lub tabelami bazy danych.
P.2: Co to jest unikalny klucz?
Odpowiedź:
Klucze unikalne to klucze, które jednoznacznie definiują rekord w tabeli. Różni się od kluczy podstawowych, ponieważ klucz unikalny może zawierać jedną wartość NULL, ale klucz podstawowy nie zawiera żadnych wartości NULL.
P.3: Co to jest sztuczny klucz?
Odpowiedź:
Klucze sztuczne to klucze używane, gdy żaden atrybut nie zawiera wszystkich właściwości klucza podstawowego lub jeśli klucz podstawowy jest bardzo duży i złożony.