logo

Kandidatenschlüssel im DBMS

A Kandidatenschlüssel ist ein Teil eines Schlüssels, der als bekannt ist Superschlüssel ( im vorherigen Abschnitt besprochen ), wobei der Superschlüssel die Obermenge aller Attribute ist, die eine Tabelle eindeutig identifizieren können.

Hier werden wir über den Kandidatenschlüssel, seine Rolle und seine Verwendung diskutieren. Wir werden uns auch einige Beispiele ansehen, die uns helfen, das Konzept eines Kandidatenschlüssels besser zu verstehen.

So öffnen Sie eine JSON-Datei

Was ist ein Kandidatenschlüssel?

Ein Kandidatenschlüssel ist eine Teilmenge eines Superschlüsselsatzes, wobei der Schlüssel, der kein redundantes Attribut enthält, kein anderer als a ist Kandidatenschlüssel . Um die Kandidatenschlüssel aus dem Superschlüsselsatz auszuwählen, müssen wir uns den Superschlüsselsatz ansehen.

Rolle eines Kandidatenschlüssels

Die Rolle eines Kandidatenschlüssels besteht darin, eine Tabellenzeile oder -spalte eindeutig zu identifizieren. Außerdem darf der Wert eines Kandidatenschlüssels nicht Null sein. Die Beschreibung eines Kandidatenschlüssels lautet laut Experten „keine redundanten Attribute“ und eine „minimale Darstellung eines Tupels“.

Wie sich ein Kandidatenschlüssel von einem Primärschlüssel unterscheidet

Obwohl der Zweck von Kandidaten- und Primärschlüssel derselbe ist, nämlich die eindeutige Identifizierung der Tupel, unterscheiden sie sich auch voneinander. Das liegt daran, dass wir in einer Tabelle einen oder mehrere Kandidatenschlüssel haben können, aber wir können nur einen Primärschlüssel für eine Tabelle erstellen. Somit können wir aus der Anzahl der erhaltenen Kandidatenschlüssel den geeigneten Primärschlüssel identifizieren. Wenn es jedoch nur einen Kandidatenschlüssel in einer Tabelle gibt, kann dieser für beide Schlüsseleinschränkungen berücksichtigt werden.

String Concat Java

Beispiel eines Kandidatenschlüssels

Schauen wir uns das gleiche Beispiel an, das wir bei der Diskussion von Super Key aufgenommen haben, um die Funktionsweise eines Kandidatenschlüssels zu verstehen.

Wir haben ein EMPLOYEE_DETAIL Tabelle, in der wir die folgenden Attribute haben:

Emp_SSN: In diesem Feld wird die SSN-Nummer gespeichert.

Emp_Id: Ein Attribut, das den Wert der Mitarbeiteridentifikationsnummer speichert.

string zu int java

Emp_name: Ein Attribut, das den Namen des Mitarbeiters speichert, der die angegebene Mitarbeiter-ID besitzt.

Emp_email: Ein Attribut, das die E-Mail-ID der angegebenen Mitarbeiter speichert.

Der EMPLOYEE_DETAIL Nachfolgend finden Sie eine Tabelle, die Ihnen zum besseren Verständnis dient:

Kandidatenschlüssel im DBMS

Aus der obigen Tabelle haben wir also die unten angegebenen Superschlüssel erhalten (im vorherigen Abschnitt besprochen):

Kandidatenschlüssel im DBMS

Aus diesen Sätzen von Superschlüsseln können wir nun auf die Kandidatenschlüssel schließen. Um die Kandidatenschlüssel zu ermitteln, besteht der beste Weg darin, die Primärschlüssel so weit wie möglich zu analysieren und zu bilden. Wir müssen also die Mengen aus den Superschlüsselsätzen identifizieren, die allein die gesamte Tabelle identifizieren können, oder wir können sagen, die anderen Attribute der Tabelle. Somit ist das Ergebnis:

Marquee-HTML
Kandidatenschlüssel im DBMS

Dies sind also die drei erhaltenen Attribute, die die anderen Nicht-Primärattribute der Tabelle identifizieren können. All dies sind die Kandidatenschlüssel, aus denen wir das am besten geeignete Attribut auswählen können, das alle Datensätze der Tabelle leicht identifizieren kann. Dies wird als Primärschlüssel bezeichnet.

Unterschied zwischen Candidate Key und Super Key

Aus den obigen Diskussionen können wir die folgenden Unterschiede erkennen:

Superschlüssel Kandidatenschlüssel
Es ist die Obermenge aller dieser Attribute, die die Tabelle eindeutig identifizieren kann. Es ist die Teilmenge oder der Teil des Superschlüssels.
Es ist keineswegs zwingend, dass alle Superschlüssel Kandidatenschlüssel sind. Andererseits sind alle Kandidatenschlüssel Superschlüssel.
Das Superschlüsselattribut kann NULL sein, was bedeutet, dass seine Werte null sein können. Ein Attribut, das einen Kandidatenschlüssel enthält, kann niemals NULL sein, was bedeutet, dass seine Werte nicht Null sein können.
Alle Superschlüssel bilden zusammen die Kandidatenschlüssel. In ähnlicher Weise werden Kandidatenschlüssel zusammengestellt, um Primärschlüssel zu erstellen.
Die Anzahl der gebildeten Superschlüssel ist immer größer. Hier sind Kandidatenschlüssel weniger als Superschlüssel.

Somit ist der Superschlüssel die Obermenge, der Kandidatenschlüssel die Teilmenge und der Primärschlüssel die Unterteilmenge des Superschlüssels.