7 Arten von Schlüsseln in DBMS erklärt
Veröffentlicht: 2021-03-12Inhaltsverzeichnis
Was sind die Schlüssel in DBMS?
Ein Schlüssel in DBMS ist ein Attribut oder eine Reihe von Attributen, die helfen, ein Tupel (oder eine Zeile) in einer Beziehung (oder Tabelle) eindeutig zu identifizieren. Schlüssel werden auch verwendet, um Beziehungen zwischen den verschiedenen Tabellen und Spalten einer relationalen Datenbank herzustellen. Einzelne Werte in einem Schlüssel werden als Schlüsselwerte bezeichnet.
Dieser Blog behandelt alles, was Sie über die Schlüssel in DBMS und die Schließung von Attributen wissen müssen Finden Sie den Schlüssel einer beliebigen Beziehung (Tabelle). Bleiben Sie bis zum Ende des Artikels für einige kritische GATE-Fragen zu Schlüsseln in DBMS.
Warum werden die Schlüssel benötigt?
Ein Schlüssel wird in den Definitionen verschiedener Arten von Integritätsbedingungen verwendet. Eine Tabelle in einer Datenbank repräsentiert eine Sammlung von Datensätzen oder Ereignissen für eine bestimmte Beziehung. Jetzt kann es Tausende und Abertausende solcher Aufzeichnungen geben, von denen einige dupliziert werden können.
Es sollte eine Möglichkeit geben, jeden Datensatz separat und eindeutig zu identifizieren, dh keine Duplikate. Schlüssel ermöglichen es uns, uns von diesem Ärger zu befreien.
Nehmen wir ein reales Beispiel der Datenbank jedes Studenten, der an einer Ingenieurhochschule studiert.
Welche Eigenschaft des Schülers wird Ihrer Meinung nach jeden von ihnen eindeutig identifizieren? Sie können sich auf einen Studenten beziehen, indem Sie seinen Namen, seine Abteilung, sein Jahr und seine Abteilung verwenden. Oder Sie nennen nur die Matrikelnummer des Studierenden und erhalten daraus alle weiteren Details.
Ein Schlüssel kann entweder eine Kombination aus mehr als einem Attribut (oder Spalten) oder nur ein einzelnes Attribut sein. Das Hauptmotiv dabei ist, jedem Datensatz eine einzigartige Identität zu geben .
Lesen Sie auch: DBMS vs. RDBMS
Arten von Schlüsseln in DBMS
Es gibt im Großen und Ganzen sieben Arten von Schlüsseln in DBMS:
- Primärschlüssel
- Kandidatenschlüssel
- Superschlüssel
- Unbekannter Schlüssel
- Zusammengesetzter Schlüssel
- Alternativer Schlüssel
- Einzigartiger Schlüssel
Betrachten wir sie einzeln.
1. Primärschlüssel
Ein Primärschlüssel ist eine Spalte einer Tabelle oder eine Reihe von Spalten, die dazu beitragen, jeden in dieser Tabelle vorhandenen Datensatz eindeutig zu identifizieren. Es kann nur einen Primärschlüssel in einer Tabelle geben. Außerdem darf der Primärschlüssel nicht die gleichen Werte haben, die sich für eine Zeile wiederholen. Jeder Wert des Primärschlüssels muss ohne Wiederholungen unterschiedlich sein.
Die PRIMARY KEY (PK)-Einschränkung, die für eine Spalte oder einen Satz von Spalten gilt, lässt nicht zu, dass sie Nullwerte oder Duplikate haben. Eine Tabelle kann nur eine Primärschlüsseleinschränkung haben. Jeder Wert im Primärschlüssel kann nicht durch Fremdschlüssel (unten erklärt) geändert werden, die darauf verweisen.
2. Superschlüssel
Super Key ist die Menge aller Schlüssel, die helfen, Zeilen in einer Tabelle eindeutig zu identifizieren. Das bedeutet, dass all jene Spalten einer Tabelle, die die anderen Spalten dieser Tabelle eindeutig identifizieren können, alle als Superschlüssel betrachtet werden.
Super Key ist die Obermenge eines Kandidatenschlüssels (unten erklärt). Der Primärschlüssel einer Tabelle wird aus dem Superschlüsselsatz ausgewählt, um zum Identitätsattribut der Tabelle zu werden.
3. Kandidatenschlüssel
Kandidatenschlüssel sind jene Attribute, die Zeilen einer Tabelle eindeutig identifizieren. Der Primärschlüssel einer Tabelle wird aus einem der Kandidatenschlüssel ausgewählt. Kandidatenschlüssel haben also die gleichen Eigenschaften wie die oben erläuterten Primärschlüssel. Es kann mehr als einen Kandidatenschlüssel in einer Tabelle geben.
4. Alternativschlüssel
Wie oben erwähnt, kann eine Tabelle mehrere Auswahlmöglichkeiten für einen Primärschlüssel haben; es kann jedoch nur eine auswählen. Daher werden alle Schlüssel, die nicht zum Primärschlüssel geworden sind, als Alternativschlüssel bezeichnet.
5. Fremdschlüssel
Foreign Key wird verwendet, um Beziehungen zwischen zwei Tabellen herzustellen. Ein Fremdschlüssel erfordert, dass jeder Wert in einer Spalte oder einem Spaltensatz mit dem Primärschlüssel der Referenztabelle übereinstimmt. Fremdschlüssel helfen dabei, Daten und referenzielle Integrität aufrechtzuerhalten.
6. Zusammengesetzter Schlüssel
Zusammengesetzter Schlüssel ist ein Satz von zwei oder mehr Attributen, die dabei helfen, jedes Tupel in einer Tabelle eindeutig zu identifizieren. Die Attribute in dem Satz sind möglicherweise nicht eindeutig, wenn sie einzeln betrachtet werden. Zusammengenommen sorgen sie jedoch für Einzigartigkeit.
7. Eindeutiger Schlüssel
Eindeutiger Schlüssel ist eine Spalte oder eine Reihe von Spalten, die jeden Datensatz in einer Tabelle eindeutig identifizieren. Alle Werte müssen in diesem Schlüssel eindeutig sein. Ein eindeutiger Schlüssel unterscheidet sich von einem Primärschlüssel, da er nur einen Nullwert haben kann, während ein Primärschlüssel keine Nullwerte haben kann.
Funktionale Abhängigkeiten
Nachdem wir nun eine andere Art von Schlüsseln in DBMS kennen, sehen wir uns an, wie man sie identifiziert, wenn man eine Tabelle aus einer Datenbank erhält. Dazu verwenden wir das Konzept der funktionalen Abhängigkeiten.
Eine funktionale Abhängigkeit (FD) ist eine Einschränkung zwischen zwei Sätzen von Attributen. Diese Einschränkung gilt für zwei beliebige Tupel t1 und t2 in r, wenn t1[X] = t2[X], dann haben sie t1[Y] = t2[Y]. Das heißt, der Wert der X-Komponente eines Tupels bestimmt eindeutig den Wert der Komponente Y.
FD wird bezeichnet als X &agr; Y (dies wird gelesen als „Y ist funktional abhängig von X“). Die linke Seite heißt Determinante, die rechte Seite heißt abhängige.
Abschluss eines Satzes von Attributen
Ein Abschluss ist eine Menge aller möglichen FDs, die von einer gegebenen Menge von FDs abgeleitet sind. Es wird auch als vollständiger Satz von FDs bezeichnet. Wenn F verwendet wird, um die Menge von FDs für die Relation R zu spenden, dann wird der durch F implizierte Abschluss einer Menge von FDs mit F+ bezeichnet .
Wir werden nun den Abschluss einer Menge von Attributen bezüglich einer gegebenen Menge von FDs definieren. Es hilft dabei, den Superschlüssel der Beziehung zu identifizieren und herauszufinden, ob ein FD aus einem gegebenen Satz von FDs abgeleitet werden kann oder ob ein FD redundant ist. Nachdem Sie eine Reihe funktionaler Abhängigkeiten von einer Relation gefunden haben, besteht der nächste Schritt darin, den Superschlüssel für diese Relation (Tabelle) zu finden.
Dann finden wir den Abschluss der Menge von Attributen heraus, um zu entscheiden, ob ein Attribut (oder eine Menge von Attributen) einer Tabelle ein Schlüssel für diese Tabelle ist oder nicht. Der Satz von Attributen , die funktional vom Attribut X abhängig sind, wird als Attributabschluss von X bezeichnet und kann als X+ dargestellt werden.
Nachfolgend sind einige Regeln aufgeführt, die zur Bestimmung von F+ erforderlich sind:
- Reflexivität: Wenn X eine Obermenge von Y oder Y eine Teilmenge von X ist, dann ist X ? Y.
- Augmentation: Wenn X ? Y, dann XZ ? YZ. Oder wenn Z ⊆ W und X ? Y, dann XW ? YZ.
- Transitivität: Wenn X ? Y und Y ? Z, dann X? Z.
- Union: Wenn X ? Y und X ? Z, dann X? YZ.
- Zerlegung: Wenn X ? YZ, dann X ? Y und X ? Z.
- Pseudotransitivität: Wenn X ? Y und YW ? Z, dann XW ? Z.
Wie findet man Candidate Keys und Super Keys mit Attribute Closure?
- Wenn der Attributabschluss eines Attributsatzes alle Attribute der Relation enthält, ist der Attributsatz der Superschlüssel der Relation.
- Wenn keine Teilmenge dieser Attributmenge alle Beziehungsattribute funktional bestimmen kann, ist diese Menge der Kandidatenschlüssel.
Lassen Sie uns ein paar zuvor gestellte GATE-Fragen besprechen, um die Anwendungen der Attributschließung zu sehen.
TOR 2014
Betrachten Sie das Beziehungsschema R = {E, F, G, H, I, J, K, L, M, N} und die Menge der funktionalen Abhängigkeiten {{E, F} ? {G}, {F} ? {I, J}, {E, H} ? {K, L}, K ? {M}, L? {N} auf R. Was ist der Schlüssel für R?
(A) {E, F}
(B) {E, F, H}
(C) {E, F, H, K, L}
(D) {E}
Vorgehensweise: Wir prüfen den Attributabschluss aller angebotenen Optionen. Die Menge, deren Abschluss uns die gesamte Relation R liefert, wird die richtige Antwort sein.
A: {E, F} + = {EFGIJ} ≠ R
B: {E, F, H} + = {EFGHIJKLMN} = R
C: {E, F, H, K, L} + = {EFGHIJKLMN} = R
D: {E} + = {E} ≠ R
Beide Optionen B und C geben uns das gesamte Beziehungsschema. Wir wählen jedoch die minimale Option, um die richtige Antwort zu sein, da ein Candidate Key der minimale Super Key sein sollte .
Antworten: B
TOR 2013
Die Relation R hat acht Attribute ABCDEFGH. Felder von R enthalten nur atomare Werte. F = {CH ? G, A? BC, B ? CFH, E ? A, F? EG} ist eine Menge von funktionalen Abhängigkeiten (FDs), sodass F+ genau die Menge von FDs ist, die für R gelten.
Wie viele Kandidatenschlüssel hat die Relation R?
(A) 3
(B) 4
(c) 5
(D) 6
Ansatz: Wir nehmen die LHS jeder funktionalen Abhängigkeit, die in der Frage angegeben ist, und finden ihre Attributverschlüsse.
CH+ = G
A+ = ABCEFGH
B+ = ABCEFGH
E+ = ABCEFGH
F+ = ABCEFGH
Wir sehen also, dass die Schließungen von A, B, E, F die gesamte Beziehung außer dem Attribut D haben. Es gibt also insgesamt 4 Kandidatenschlüssel AD, BD, ED und FD.
Antwort:B
Lernen Sie Softwarekurse online von den besten Universitäten der Welt. Verdienen Sie Executive PG-Programme, Advanced Certificate-Programme oder Master-Programme, um Ihre Karriere zu beschleunigen.
Fazit
Schlüssel und funktionale Abhängigkeiten spielen eine sehr wichtige Rolle beim Entwerfen einer Datenbank. Diese Konzepte helfen auch, den Unterschied zwischen gutem und schlechtem Datenbankdesign zu finden. Der letzte Prozess zum Entfernen von Redundanzen und zum effizienten Gestalten der Datenbank ist die Normalisierung , die alle in diesem Artikel erwähnten Konzepte verwendet.
Wenn Sie mehr über Full-Stack-Entwicklung erfahren möchten, schauen Sie sich das Executive PG-Programm in Full-Stack-Softwareentwicklung von upGrad & IIIT-B an, das für Berufstätige konzipiert ist und mehr als 500 Stunden strenge Schulungen, mehr als 9 Projekte, und Aufgaben, IIIT-B-Alumni-Status, praktische praktische Abschlussprojekte und Arbeitsunterstützung bei Top-Unternehmen.
Was sind die verschiedenen Arten von Schlüsseln in DBMS?
Es gibt mehrere Arten von Schlüsseln, die in einer Datenbank verwendet werden. Der Primärschlüssel wird verwendet, um eine bestimmte Zeile in einer Tabelle zu identifizieren. Der eindeutige Schlüssel wird verwendet, um sicherzustellen, dass es nur einen Eintrag in einer bestimmten Tabelle gibt. Ein Fremdschlüssel wird verwendet, um Einträge in einer Tabelle mit einer anderen zu verknüpfen. Ein zusammengesetzter Schlüssel ist eine Sammlung mehrerer Spalten in einer Tabelle, die alle zusammen verwendet werden, um eine Zeile zu identifizieren. Diese Schlüssel helfen Ihnen, eine bestimmte Spalte einer Zeile einer Tabelle genau und eindeutig zu identifizieren. Daher ist es sehr wichtig, die genauen Spalten als Schlüssel für Ihren Anwendungsfall zu verwenden.
Was ist ein Fremdschlüssel in DBMS?
Fremdschlüssel ist eine Spalte oder eine Gruppe von Spalten, die verwendet wird, um die Zeilen einer Tabelle mit den Zeilen einer anderen Tabelle zu verknüpfen. Es wird verwendet, um Dateninkonsistenzen zu verhindern. In DBMS wird der Fremdschlüssel mithilfe einer einzelnen Spalte oder einer Gruppe von Spalten (logische Spalte) implementiert, und das DBMS prüft, ob die Werte in diesen Spalten mit den Werten in den referenzierten Spalten (Primärschlüssel) übereinstimmen. Angenommen, Tabelle A und Tabelle B haben beide eine Spalte namens Spalte A. Sie können sagen, dass Spalte A in Tabelle A auf Spalte A in Tabelle B verweist. Dies kann man sich als Pfeil vorstellen, auf den ein Fremdschlüsselwert zeigt die Zieltabelle.
Was ist ein zusammengesetzter Schlüssel in DBMS?
Der zusammengesetzte Schlüssel ist ein Superschlüssel. Es ist eine Kombination aus einer oder mehreren Spalten. Es ermöglicht die Konstruktion eines einzelnen Schlüssels aus einer Kombination verschiedener Spalten. Er wird auch zusammengesetzter Bezeichner, zusammengesetzter Schlüssel oder zusammengesetzter Schlüssel genannt. Kurz gesagt, Sie können eine Reihe von Spalten verwenden, um eine eindeutige Zeile in Ihrer Tabelle zu identifizieren, falls Sie keine einzelne Spalte haben, die eine Zeile eindeutig identifizieren kann. In einem solchen Fall wird die Menge aller Spalten, die Sie verwenden werden, als zusammengesetzter Schlüssel betrachtet. Daher kann zu Recht gesagt werden, dass ein Primärschlüssel, der mehr als eine Spalte hat, in einen zusammengesetzten Schlüssel umbenannt wird.