Was ist der Unterschied zwischen composite key, primary key und foreign key?

Transparenz
DAS WICHTIGSTE IM ÜBERBLICK

Verknüpfungen von Key Kategorien definieren, wie kleingliedrig die Erstellung komplexer Muster und Beziehungen in relationalen Datenbanksystemen ist. Diese detallierte Herangehensweise ist aber auch notwendig, um möglichst anspruchsvolle Systeme zu entwickeln.

Der Unterschied zwischen composite key, foreign key und primary key zeigt auf einfache Weise die komplexe und teils unübersichtliche Natur der relationalen Datenbankstandards. Diese machen Datenbankverwaltung zu einer fortgeschrittenen Aufgabe, mit speziellen Fähigkeiten.

Primary Key (Primärschlüssel)

Zunächst identifiziert ein primary key jeden Datensatz in einer Datenbanktabelle auf eindeutige Weise. Jeder einzelne Schlüssel, der dies tut, kann als Kandidatenschlüssel bezeichnet werden, aber nur einer kann von Datenbankingenieuren als Primärschlüssel ausgewählt werden.

Composite key (zusammengesetzter Schlüssel)

Als Nächstes gibt es den composite key, der aus zwei oder mehr Attributen besteht, die zusammen jeden Datensatz eindeutig identifizieren.

Ein Beispiel wäre eine Liste von Häusern in einem Immobilienmarkt. In einer gut geordneten Datenbank sollte es einen Primärschlüssel geben, der jeden Datensatz eindeutig identifiziert.

In manchen Fällen werden die Häuser nur durch eine Hypothekennummer eindeutig identifiziert – anderen Daten (Orte, Straßen, Hausnummern) sind nicht eindeutig für jeden Datensatz. Die Hypothekennummer wäre dann der Primärschlüssel. Nehmen wir jedoch an, dass die Listing-Technologie eines MLS-Maklers den Datensätzen in der Tabelle ihre eigenen eindeutigen Nummern zuweist.

Dann gibt es zwei Schlüssel, die Entwickler als “Kandidatenschlüssel” bezeichnen könnten:

  • Die Hypothekennummer.
  • Die MLS-Nummer.

Einer von ihnen wird sich als “Primärschlüssel” qualifizieren, was durchals als willkürlich ansehen werden kann.

Ein composite key wäre dann die Kombination aus zwei Schlüsseln.

Ein Beispiel: Die Kombination aus Hausnummer und Straße könnte ein zusammengesetzter Schlüssel sein, da die Marktangebote lokal sind. Wenn dies der Fall ist, sollte bei einer Suche nach der Hausnummer und der Straße nur ein einziger Datensatz zurückgegeben werden.

Foreign key (Fremdschlüssel)

Wenn es in einer verknüpften Tabelle, z. B. einer Käufertabelle, einen Schlüssel gibt, der auf den Primärschlüssel verweist, handelt es sich um einen foreign key.

Während ein primary key und ein composite key die gleichen Aufgaben erfüllen können, besteht der primary key aus einer Spalte, während der composite key aus zwei oder mehr Spalten besteht.

Die Beziehung zwischen primary key und foreign key ist sehr unterschiedlich. Das Wichtigste dabei ist, dass der primary key in einer Datenbanktabelle zum foreign key in einer anderen Datenbanktabelle wird, und umgekehrt.

Ein foreign key in einer Datenbanktabelle wird aus einer anderen Tabelle entnommen und angewendet, um Datenbankeinträge mit dieser Fremdtabelle zu verknüpfen.

Der foreign key in der Datenbanktabelle ist eigentlich der primary key der anderen Tabelle.

Um dies zu verdeutlichen, hier ein Beispiel: Wenn wir eine Datenbanktabelle mit der Bezeichnung “Bestellungen” und einen foreign key mit der Bezeichnung “Kunden” haben, können wir diesen foreign keys vielleicht mit einem primary key verknüpfen, der jeden Kunden in einer separaten Tabelle identifiziert.

Zusammengefasst: All diese Verknüpfungen von Key Kategorien zeigen, wie detailliert die Erstellung anspruchsvoller Muster und Beziehungen in relationalen Datenbanksystemen ist.

Datenbankingenieure kennen diese Kategorien und Attribute genau und wenden sie an, um sicherzustellen, dass die von den Endbenutzern ausgelösten SQL-Abfragen und anderen Datenabrufmethoden effektiv sind.

Zusammen mit der Datenbanknormalisierung und der Förderung strukturierter Daten sind diese Key Beziehungen Kernbestandteile der Integrität von Datenbanksystemen und der besten Praktiken für die Datenspeicherung.

Verwandte Begriffe

In Verbindung stehende Artikel

Justin Stoltzfus
Redaktion
Justin Stoltzfus
Redaktion

Justin Stoltzfus ist ein unabhängiger Blogger und Unternehmensberater, der eine Reihe von Unternehmen bei der Entwicklung von Medienlösungen für neue Kampagnen und den laufenden Betrieb unterstützt. Er ist Absolvent der James Madison University und war mehrere Jahre lang Mitarbeiter des Intelligencer Journal in Lancaster, Pennsylvania, bevor die beiden Tageszeitungen der Stadt im Jahr 2007 fusionierten. In jüngster Zeit hat er als unabhängiger Berater, Autor und Ausbilder Verbindungen zu verschiedenen Unternehmen aufgebaut und sich in Print- und Webpublikationen einen Namen gemacht. Das zeigt sich in seinem guten Ruf für hervorragende Leistungen bei Unternehmensschulungen, Marketingkampagnen und anderen Medienprojekten.