Ein Schlüssel besteht aus einer oder mehreren Spalten, die die Datensätze einer Tabelle eindeutig identifizieren. Meist wird dazu eine Spalte hinzugefügt, in der die Datensätze durchnummeriert sind.

Arten von Schlüsseln

Natürlicher Schlüssel

Ein natürlicher Schlüssel ist ein Schlüssel, der nicht extra hinzugefügt werden muss, sondern bereits vorhanden ist.

Beispiel: Der Name eines Buches kann als natürlicher Schlüssel verwendet werden, wenn es keine zwei Bücher mit dem gleichen Namen gibt.

Künstlicher Schlüssel

Ein künstlicher Schlüssel besteht Tabellenspalten, die extra für diesen Zweck hinzugefügt wurden.

Beispiel: Die ISBN-Nummer eines Buches.

Künstliche Schlüssel werden immer dann verwendet, wenn es keinen natürlichen Schlüssel gibt.

Primärschlüssel

Jede Tabelle sollte einen Primärschlüssel haben. Dieser kann sowohl ein künstlicher, als auch ein natürlicher Schlüssel sein; Wenn es mehrere Schlüssel zur Auswahl gibt, muss man sich für einen entscheiden.

In einer Schemadarstellung wird in jeder Tabelle der Primärschlüssel unterstrichen.

Fremdschlüssel

Ein Fremdschlüssel besteht aus einer oder mehreren Tabellenspalten, die den Primärschlüssel einer anderen Tabelle enthalten. Auf diese Weise werden mehrere Tabellen durch eine 1:1- oder n:1-Beziehung verknüpft.

In einer Schemadarstellung werden alle Fremdschlüssel gestrichelt unterstrichen.

Beispiel: Es gibt die Tabellen Buch und Person. Buch hat die Spalte autor, die den Primärschlüssel der Person enthält, die das Buch geschrieben hat. autor ist damit ein Fremdschlüssel.

Vorteile bei der Verwendung von Schlüsseln

Datenbanken haben die Möglichkeit, Schlüssel für die Tabellen zu festzulegen. Was hat man davon?

Datenintegrität

Wenn man immer alle Schlüssel in der Datenbank speichert, kann die Datenbank Datenintegrität garantieren. Das heißt, dass die Daten immer in einem gültigen Zustand gehalten werden.

Beispiel 1: Wenn man versucht, einen Datensatz hinzuzufügen, der einen bereits existierenden Schlüssel enthält, weigert sich die Datenbank und gibt eine Fehlermeldung aus, da der Schlüssel sonst nicht mehr eindeutig wäre.

Beispiel 2: Wenn man versucht, einen Datensatz zu löschen, auf den sich ein Fremdschlüssel bezieht, wird ein Fehler ausgegeben, da sonst der Fremdschlüssel ungültig werden würde.

Dieses Verhalten lässt sich ändern: Man kann festlegen, dass beim löschen oder ändern eines Primärschlüssels alle Fremdschlüssel dazu ebenfalls gelöscht oder geändert werden. Das ist aber problematisch, da bei einer versehentlichen Löschfunktion möglicherweise viele wichtigen Daten gelöscht werden.

Kommentieren Kommentare