DBMS-Schlüssel: Kandidat, Super, Primär, Fremd (Beispiel)

Inhaltsverzeichnis:

Anonim

Was sind Schlüssel in DBMS?

KEYS in DBMS ist ein Attribut oder eine Reihe von Attributen, mit denen Sie eine Zeile (Tupel) in einer Beziehung (Tabelle) identifizieren können. Mit ihnen können Sie die Beziehung zwischen zwei Tabellen finden. Mithilfe von Schlüsseln können Sie eine Zeile in einer Tabelle durch eine Kombination aus einer oder mehreren Spalten in dieser Tabelle eindeutig identifizieren. Der Schlüssel ist auch hilfreich, um einen eindeutigen Datensatz oder eine eindeutige Zeile aus der Tabelle zu finden. Der Datenbankschlüssel ist auch hilfreich, um einen eindeutigen Datensatz oder eine eindeutige Zeile aus der Tabelle zu finden.

Beispiel:

Angestellten ID Vorname Nachname
11 Andrew Johnson
22 Tom Holz
33 Alex Gesund

Im oben angegebenen Beispiel ist die Mitarbeiter-ID ein Primärschlüssel, da sie einen Mitarbeiterdatensatz eindeutig identifiziert. In dieser Tabelle kann kein anderer Mitarbeiter dieselbe Mitarbeiter-ID haben.

In diesem Tutorial lernen Sie:

  • Was sind Schlüssel?
  • Warum brauchen wir einen Schlüssel?
  • Verschiedene Schlüssel im Datenbankverwaltungssystem
  • Was ist Super Key?
  • Was ist der Primärschlüssel?
  • Was ist ein Alternativschlüssel?
  • Was ist der Kandidatenschlüssel?
  • Was ist ein Fremdschlüssel?
  • Was ist ein zusammengesetzter Schlüssel?
  • Was ist ein zusammengesetzter Schlüssel?
  • Was ist der Ersatzschlüssel?
  • Unterschied zwischen Primärschlüssel und Fremdschlüssel

Warum brauchen wir einen Schlüssel?

Hier sind einige Gründe für die Verwendung von SQL-Schlüssel im DBMS-System.

  • Mithilfe von Schlüsseln können Sie jede Datenzeile in einer Tabelle identifizieren. In einer realen Anwendung kann eine Tabelle Tausende von Datensätzen enthalten. Darüber hinaus könnten die Aufzeichnungen dupliziert werden. Schlüssel stellen sicher, dass Sie einen Tabellendatensatz trotz dieser Herausforderungen eindeutig identifizieren können.
  • Ermöglicht das Herstellen einer Beziehung zwischen Tabellen und das Identifizieren der Beziehung zwischen Tabellen
  • Helfen Sie dabei, Identität und Integrität in der Beziehung durchzusetzen.

Schlüsseltypen im Datenbankverwaltungssystem

Es gibt hauptsächlich sieben verschiedene Arten von Schlüsseln in DBMS und jeder Schlüssel hat seine andere Funktionalität:

  • Superschlüssel - Ein Superschlüssel ist eine Gruppe von einzelnen oder mehreren Schlüsseln, die Zeilen in einer Tabelle identifizieren.
  • Primärschlüssel - ist eine Spalte oder Gruppe von Spalten in einer Tabelle, die jede Zeile in dieser Tabelle eindeutig identifiziert.
  • Kandidatenschlüssel - ist eine Reihe von Attributen, die Tupel in einer Tabelle eindeutig identifizieren. Der Kandidatenschlüssel ist ein Superschlüssel ohne wiederholte Attribute.
  • Alternativer Schlüssel - ist eine Spalte oder Gruppe von Spalten in einer Tabelle, die jede Zeile in dieser Tabelle eindeutig identifiziert.
  • Fremdschlüssel - ist eine Spalte, die eine Beziehung zwischen zwei Tabellen erstellt. Der Zweck von Fremdschlüsseln besteht darin, die Datenintegrität aufrechtzuerhalten und die Navigation zwischen zwei verschiedenen Instanzen einer Entität zu ermöglichen.
  • Zusammengesetzter Schlüssel - verfügt über zwei oder mehr Attribute, mit denen Sie einen bestimmten Datensatz eindeutig erkennen können. Es ist möglich, dass nicht jede Spalte für sich in der Datenbank eindeutig ist.
  • Zusammengesetzter Schlüssel - Ein künstlicher Schlüssel, der darauf abzielt, jeden Datensatz eindeutig zu identifizieren, wird als Ersatzschlüssel bezeichnet. Diese Art von Schlüssel ist einzigartig, da sie erstellt werden, wenn Sie keinen natürlichen Primärschlüssel haben.
  • Ersatzschlüssel - Ein künstlicher Schlüssel, der darauf abzielt, jeden Datensatz eindeutig zu identifizieren, wird als Ersatzschlüssel bezeichnet. Diese Art von Schlüssel ist einzigartig, da sie erstellt werden, wenn Sie keinen natürlichen Primärschlüssel haben.

Was ist der Superschlüssel?

Ein Superkey ist eine Gruppe von einzelnen oder mehreren Schlüsseln, die Zeilen in einer Tabelle identifizieren. Ein Superschlüssel kann zusätzliche Attribute haben, die für die eindeutige Identifizierung nicht benötigt werden.

Beispiel:

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

In dem oben angegebenen Beispiel sind EmpSSN- und EmpNum-Namen Superkeys.

Was ist ein Primärschlüssel?

PRIMARY KEY ist eine Spalte oder Gruppe von Spalten in einer Tabelle, die jede Zeile in dieser Tabelle eindeutig identifiziert. Der Primärschlüssel darf kein Duplikat sein, dh derselbe Wert kann nur einmal in der Tabelle angezeigt werden. Eine Tabelle kann nicht mehr als einen Primärschlüssel haben.

Regeln zum Definieren des Primärschlüssels:

  • Zwei Zeilen können nicht denselben Primärschlüsselwert haben
  • Es muss für jede Zeile einen Primärschlüsselwert haben.
  • Das Primärschlüsselfeld darf nicht null sein.
  • Der Wert in einer Primärschlüsselspalte kann niemals geändert oder aktualisiert werden, wenn ein Fremdschlüssel auf diesen Primärschlüssel verweist.

Beispiel:

Im folgenden Beispiel ist StudID ein Primärschlüssel.

StudID Rolle Nr Vorname Nachname Email
1 11 Tom Preis Diese E-Mail-Adresse ist vor Spambots geschützt! JavaScript muss aktiviert sein, damit sie angezeigt werden kann.
2 12 Nick Wright Diese E-Mail-Adresse ist vor Spambots geschützt! JavaScript muss aktiviert sein, damit sie angezeigt werden kann.
3 13 Dana Natan Diese E-Mail-Adresse ist vor Spambots geschützt! JavaScript muss aktiviert sein, damit sie angezeigt werden kann.

Was ist der Alternativschlüssel?

ALTERNATE KEYS ist eine Spalte oder Gruppe von Spalten in einer Tabelle, die jede Zeile in dieser Tabelle eindeutig identifiziert. Eine Tabelle kann mehrere Auswahlmöglichkeiten für einen Primärschlüssel haben, aber nur eine kann als Primärschlüssel festgelegt werden. Alle Schlüssel, die keine Primärschlüssel sind, werden als Alternativschlüssel bezeichnet.

Beispiel:

In dieser Tabelle sind StudID, Roll No, Email als Primärschlüssel qualifiziert. Da StudID der Primärschlüssel ist, wird Roll No, Email zum alternativen Schlüssel.

StudID Rolle Nr Vorname Nachname Email
1 11 Tom Preis Diese E-Mail-Adresse ist vor Spambots geschützt! JavaScript muss aktiviert sein, damit sie angezeigt werden kann.
2 12 Nick Wright Diese E-Mail-Adresse ist vor Spambots geschützt! JavaScript muss aktiviert sein, damit sie angezeigt werden kann.
3 13 Dana Natan Diese E-Mail-Adresse ist vor Spambots geschützt! JavaScript muss aktiviert sein, damit sie angezeigt werden kann.

Was ist ein Kandidatenschlüssel?

CANDIDATE KEY ist eine Reihe von Attributen, die Tupel in einer Tabelle eindeutig identifizieren. Der Kandidatenschlüssel ist ein Superschlüssel ohne wiederholte Attribute. Der Primärschlüssel sollte aus den Kandidatenschlüsseln ausgewählt werden. Jede Tabelle muss mindestens einen Kandidatenschlüssel haben. Eine Tabelle kann mehrere Kandidatenschlüssel enthalten, jedoch nur einen einzigen Primärschlüssel.

Eigenschaften des Kandidatenschlüssels:

  • Es muss eindeutige Werte enthalten
  • Der Kandidatenschlüssel kann mehrere Attribute haben
  • Darf keine Nullwerte enthalten
  • Es sollte Mindestfelder enthalten, um die Eindeutigkeit sicherzustellen
  • Identifizieren Sie jeden Datensatz in einer Tabelle eindeutig

Beispiel: In der angegebenen Tabelle sind Stud ID, Roll No und E-Mail Kandidatenschlüssel, mit deren Hilfe wir den Schülerdatensatz in der Tabelle eindeutig identifizieren können.

StudID Rolle Nr Vorname Nachname Email
1 11 Tom Preis Diese E-Mail-Adresse ist vor Spambots geschützt! JavaScript muss aktiviert sein, damit sie angezeigt werden kann.
2 12 Nick Wright Diese E-Mail-Adresse ist vor Spambots geschützt! JavaScript muss aktiviert sein, damit sie angezeigt werden kann.
3 13 Dana Natan Diese E-Mail-Adresse ist vor Spambots geschützt! JavaScript muss aktiviert sein, damit sie angezeigt werden kann.

Was ist der Fremdschlüssel?

FOREIGN KEY ist eine Spalte, die eine Beziehung zwischen zwei Tabellen erstellt. Der Zweck von Fremdschlüsseln besteht darin, die Datenintegrität aufrechtzuerhalten und die Navigation zwischen zwei verschiedenen Instanzen einer Entität zu ermöglichen. Es fungiert als Querverweis zwischen zwei Tabellen, da es auf den Primärschlüssel einer anderen Tabelle verweist.

Beispiel:

DeptCode DeptName
001 Wissenschaft
002 Englisch
005 Computer
Lehrerausweis Fname Lname
B002 David Warner
B017 Sara Joseph
B009 Mike Brunton

In diesem Schlüssel im DBMS-Beispiel haben wir zwei Tabellen, Unterricht und Abteilung in einer Schule. Es gibt jedoch keine Möglichkeit zu sehen, welche Suche in welcher Abteilung funktioniert.

In dieser Tabelle können wir durch Hinzufügen des Fremdschlüssels in Deptcode zum Lehrernamen eine Beziehung zwischen den beiden Tabellen erstellen.

Lehrerausweis DeptCode Fname Lname
B002 002 David Warner
B017 002 Sara Joseph
B009 001 Mike Brunton

Dieses Konzept wird auch als referenzielle Integrität bezeichnet.

Was ist der zusammengesetzte Schlüssel?

COMPOUND KEY verfügt über zwei oder mehr Attribute, mit denen Sie einen bestimmten Datensatz eindeutig erkennen können. Es ist möglich, dass nicht jede Spalte für sich in der Datenbank eindeutig ist. In Kombination mit der anderen Spalte oder den anderen Spalten wird die Kombination der zusammengesetzten Schlüssel jedoch eindeutig. Der Zweck des zusammengesetzten Schlüssels in der Datenbank besteht darin, jeden Datensatz in der Tabelle eindeutig zu identifizieren.

Beispiel:

Best.-Nr PorductID Produktname Menge
B005 JAP102459 Maus 5
B005 DKT321573 USB 10
B005 OMG446789 LCD-Monitor 20
B004 DKT321573 USB 15
B002 OMG446789 Laserdrucker 3

In diesem Beispiel können OrderNo und ProductID kein Primärschlüssel sein, da ein Datensatz nicht eindeutig identifiziert wird. Es kann jedoch ein zusammengesetzter Schlüssel aus Auftrags-ID und Produkt-ID verwendet werden, da jeder Datensatz eindeutig identifiziert wird.

Was ist der zusammengesetzte Schlüssel?

COMPOSITE KEY ist eine Kombination aus zwei oder mehr Spalten, die Zeilen in einer Tabelle eindeutig identifizieren. Die Kombination der Spalten garantiert die Eindeutigkeit, obwohl die individuelle Eindeutigkeit nicht garantiert ist. Daher werden sie kombiniert, um Datensätze in einer Tabelle eindeutig zu identifizieren.

Der Unterschied zwischen zusammengesetztem und zusammengesetztem Schlüssel besteht darin, dass jeder Teil des zusammengesetzten Schlüssels ein Fremdschlüssel sein kann, der zusammengesetzte Schlüssel jedoch ein Teil des Fremdschlüssels sein kann oder nicht.

Was ist ein Ersatzschlüssel?

SURROGATE KEYS ist ein künstlicher Schlüssel, der darauf abzielt, jeden Datensatz eindeutig zu identifizieren. Er wird als Ersatzschlüssel bezeichnet. Diese Art von Teilschlüssel in DBMS ist einzigartig, da er erstellt wird, wenn Sie keinen natürlichen Primärschlüssel haben. Sie verleihen den Daten in der Tabelle keine Bedeutung. Der Ersatzschlüssel ist normalerweise eine Ganzzahl. Ein Ersatzschlüssel ist ein Wert, der unmittelbar vor dem Einfügen des Datensatzes in eine Tabelle generiert wird.

Fname Nachname Startzeit Endzeit
Anne Schmied 09:00 18:00
Jack Francis 08:00 17:00
Anna McLean 11:00 20:00
Gezeigt Willam 14:00 23:00

Oben in einem Beispiel sind die Schichtzeiten der verschiedenen Mitarbeiter dargestellt. In diesem Beispiel wird ein Ersatzschlüssel benötigt, um jeden Mitarbeiter eindeutig zu identifizieren.

Ersatzschlüssel in SQL sind zulässig, wenn

  • Keine Eigenschaft hat den Parameter des Primärschlüssels.
  • In der Tabelle, wenn der Primärschlüssel zu groß oder zu kompliziert ist.

Unterschied zwischen Primärschlüssel und Fremdschlüssel

Primärschlüssel Unbekannter Schlüssel
Hilft Ihnen, einen Datensatz in der Tabelle eindeutig zu identifizieren. Es ist ein Feld in der Tabelle, das der Primärschlüssel einer anderen Tabelle ist.
Der Primärschlüssel akzeptiert niemals Nullwerte. Ein Fremdschlüssel kann mehrere Nullwerte akzeptieren.
Der Primärschlüssel ist ein Clustered-Index, und die Daten in der DBMS-Tabelle sind physisch in der Reihenfolge des Clustered-Index organisiert. Ein Fremdschlüssel kann nicht automatisch einen Index erstellen, der geclustert oder nicht geclustert ist. Sie können jedoch manuell einen Index für den Fremdschlüssel erstellen.
Sie können den einzelnen Primärschlüssel in einer Tabelle haben. Sie können mehrere Fremdschlüssel in einer Tabelle haben.

Zusammenfassung

  • Ein Schlüssel in SQL ist ein Attribut oder eine Reihe von Attributen, mit denen Sie eine Zeile (Tupel) in einer Beziehung (Tabelle) identifizieren können.
  • Mit DBMS-Schlüsseln können Sie eine Beziehung zwischen Tabellen herstellen und die Beziehung zwischen Tabellen identifizieren
  • Sieben Arten von DBMS-Schlüsseln sind Super-, Primär-, Kandidaten-, Alternativ-, Fremd-, Verbund-, Verbund- und Ersatzschlüssel.
  • Ein Superschlüssel ist eine Gruppe von einzelnen oder mehreren Schlüsseln, die Zeilen in einer Tabelle identifizieren.
  • Eine Spalte oder Gruppe von Spalten in einer Tabelle, mit deren Hilfe wir jede Zeile in dieser Tabelle eindeutig identifizieren können, wird als Primärschlüssel bezeichnet
  • Alle Schlüssel, die keine Primärschlüssel sind, werden als Alternativschlüssel bezeichnet
  • Ein Superschlüssel ohne wiederholtes Attribut wird als Kandidatenschlüssel bezeichnet
  • Ein zusammengesetzter Schlüssel ist ein Schlüssel mit vielen Feldern, mit denen Sie einen bestimmten Datensatz eindeutig erkennen können
  • Ein Schlüssel mit mehreren Attributen zur eindeutigen Identifizierung von Zeilen in einer Tabelle wird als zusammengesetzter Schlüssel bezeichnet
  • Ein künstlicher Schlüssel, der darauf abzielt, jeden Datensatz eindeutig zu identifizieren, wird als Ersatzschlüssel bezeichnet
  • Der Primärschlüssel akzeptiert niemals Nullwerte, während ein Fremdschlüssel möglicherweise mehrere Nullwerte akzeptiert.