Sobes.tech
Junior

Was ist ein Fremdschlüssel?

sobes.tech KI

Antwort von AI

Der Fremdschlüssel (FOREIGN KEY) ist eine Datenintegritätsbeschränkung in relationalen Datenbanken. Er stellt eine Beziehung zwischen zwei Tabellen her, indem er auf den Primärschlüssel (oder einen anderen Fremdschlüssel) in einer anderen Tabelle verweist.

Hauptfunktionen des Fremdschlüssels:

  • Sicherstellung der referenziellen Integrität: Gewährleistet, dass die Werte im Fremdschlüsselfeld im referenzierten Feld der Elterntabelle existieren. Dies verhindert "verwaiste" Datensätze.
  • Herstellung von Beziehungen zwischen Tabellen: Bestimmt, wie Daten aus verschiedenen Tabellen miteinander verbunden sind.
  • Kaskadierende Aktionen: Ermöglicht automatische Aktionen (Löschen oder Aktualisieren) in der Kindtabelle, wenn sich die Daten in der Elterntabelle ändern.

Beispiel für die Erstellung eines Fremdschlüssels in SQL:

CREATE TABLE `bestellungen` (
    `id` INT AUTO_INCREMENT PRIMARY KEY,
    `kundenname` VARCHAR(255),
    `produkt_id` INT,
    FOREIGN KEY (`produkt_id`) REFERENCES `produkte`(`id`)
);

CREATE TABLE `produkte` (
    `id` INT AUTO_INCREMENT PRIMARY KEY,
    `produktname` VARCHAR(255),
    `preis` DECIMAL(10, 2)
);

In diesem Beispiel ist produkt_id in der Tabelle bestellungen ein Fremdschlüssel, der auf id in der Tabelle produkte verweist. Dies stellt sicher, dass jede Bestellung mit einem bestehenden Produkt verknüpft ist.