Auswählen eines Primärschlüssels für eine Datenbank

Datenbanken sind auf Schlüssel zum Speichern, Sortieren und Vergleichen oder Erstellen von Beziehungen zwischen Datensätzen angewiesen. Wenn Sie schon länger mit Datenbanken zu tun haben, haben Sie wahrscheinlich schon von verschiedenen Schlüsseltypen gehört: Primärschlüssel, Kandidatenschlüssel, und fremde Schlüssel.

Wenn Sie eine neue Datenbanktabelle erstellen, werden Sie aufgefordert, eine auszuwählen Primärschlüssel die jeden in dieser Tabelle gespeicherten Datensatz eindeutig identifiziert.

Mann, der an der Computertastatur arbeitet

Warum ein Primärschlüssel wichtig ist

Die Auswahl eines Primärschlüssels ist eine der wichtigsten Entscheidungen, die Sie im Entwurf einer neuen Datenbank. Die wichtigste Einschränkung besteht darin, dass Sie sicherstellen müssen, dass der ausgewählte Schlüssel eindeutig ist. Wenn es möglich ist, dass zwei Datensätze (Vergangenheit, Gegenwart oder Zukunft) denselben Wert für ein Attribut aufweisen, ist dies eine schlechte Wahl für einen Primärschlüssel.

Ein weiterer wichtiger Aspekt eines Primärschlüssels ist seine Verwendung durch andere Tabellen, die mit ihm in einer relationalen Datenbank verknüpft sind. In diesem Aspekt fungiert ein Primärschlüssel als Ziel eines Zeigers. Aufgrund dieser Abhängigkeiten muss beim Erstellen eines Datensatzes ein Primärschlüssel vorhanden sein, der sich niemals ändern kann.

Schlechte Auswahl für Primärschlüssel

Was manche Leute für eine offensichtliche Auswahl für einen Primärschlüssel halten, könnte stattdessen eine schlechte Wahl sein. Hier ein paar Beispiele:

  • Postleitzahlen Machen Sie keine guten Primärschlüssel für eine Städtetabelle. Wenn Sie eine einfache Nachschlagetabelle von Städten erstellen, scheint die Postleitzahl ein logischer Primärschlüssel zu sein. Bei weiteren Untersuchungen werden Sie jedoch möglicherweise feststellen, dass mehr als eine Stadt eine Postleitzahl hat. Beispielsweise teilen sich die Städte Neptune, Neptune City, Tinton Falls und Wall Township in New Jersey die Postleitzahl 07753.
  • Sozialversicherungsnummern Machen Sie aus vielen Gründen keine guten Primärschlüssel. Die meisten Leute betrachten ihre SSN als privat und möchten, dass sie für Datenbankbenutzer nicht klar sichtbar ist. Darüber hinaus haben einige Leute keine SSNs.
  • E-mailadressen sind auch eine schlechte Wahl für einen Primärschlüssel. Obwohl sie einzigartig sind, können sie sich im Laufe der Zeit ändern. Außerdem hat nicht jeder eine E-Mail-Adresse.

Was macht einen guten Primärschlüssel aus

Wie wählen Sie also einen effektiven Primärschlüssel aus? Wenden Sie sich in den meisten Fällen an Ihr Datenbanksystem, um Unterstützung zu erhalten.

Eine bewährte Methode beim Datenbankentwurf ist die Verwendung eines intern generierten Primärschlüssels. Ihre Datenbankverwaltungssystem kann normalerweise eine eindeutige Kennung generieren, die außerhalb des Datenbanksystems keine Bedeutung hat.

Sie können beispielsweise den Microsoft Access AutoNumber-Datentyp verwenden, um ein Feld namens RecordID zu erstellen. Der Datentyp AutoNumber erhöht das Feld automatisch jedes Mal, wenn Sie einen Datensatz erstellen. Obwohl die Zahl selbst bedeutungslos ist, bietet sie eine zuverlässige Möglichkeit, in Abfragen auf einen einzelnen Datensatz zu verweisen.

Ein guter Primärschlüssel ist normalerweise kurz, verwendet Zahlen und vermeidet Sonderzeichen oder eine Mischung aus Groß- und Kleinbuchstaben, um schnelle Datenbanksuchvorgänge und -vergleiche zu ermöglichen.