Zuverlässigere Datenbanken durch Fremdschlüssel in MySQL

Die beste Möglichkeit, zu verstehen, wie dies funktioniert, ist ein Beispiel. Hierzu erstellt man zwei Tabellen: Eine listet Tierarten samt den zugehörigen Codes auf (Tabellenname: species), die andere listet Tiere im Zoo auf (Tabellenname: zoo). Die Idee besteht darin, die beiden Tabellen über den Code der jeweiligen Tierart (species) zu verknüpfen, sodass nur diejenigen Einträge in der Zoo-Tabelle akzeptiert und in der Datenbank gespeichert werden, die über einen entsprechenden Code in der Tierarten-Tabelle verfügen.

Wichtig: Bei Tabellen, die nicht vom Typ Inno-DB sind, wird die FOREIGN KEY-Klausel ignoriert.

Wie dieses Beispiel illustriert, besteht nun eine Fremdschlüsselbeziehung zwischen den Feldern zoo.species und species.id. Ein Eintrag in der Zoo-Tabelle ist nur zulässig, wenn das entsprechende Feld zoo.species einem Wert im Feld species.id entspricht. Dies wird an der folgenden Ausgabe deutlich. Sie zeigt, was passiert, wenn man versucht einen Eintrag für Harry Hippopotamus mit einem ungültigen species-Code zu erstellen:

MySQL überprüft hier die species-Tabelle um zu sehen, ob der entsprechende Code vorhanden ist. Da dies nicht der Fall ist, wird der Datensatz zurückgewiesen. Zum Vergleich hier die Ausgabe, wenn man denselben Datensatz mit einem gültigen species-Code einfügt (also einem, der in der species-Tabelle vorhanden ist):

Auch hier überprüft MySQL in der species-Tabelle, ob der entsprechende Code vorhanden ist. Das stimmt in diesem Fall und so kann der Datensatz in der Zoo-Tabelle gespeichert werden.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

Supercomputer-Ranking: El Capitan überholt Frontier und Aurora

Mit 1,7 Exaflops ist El Capitan nun der dritte Exascale-Supercomputer weltweit. Deutschland stellt erneut den…

4 Tagen ago

Ionos führt neue AMD-Prozessoren ein

Der deutsche Hyperscaler erweitert sein Server-Portfolio um vier Angebote mit den neuen AMD EPYC 4004…

4 Tagen ago

Lags beim Online-Gaming? DSL-Vergleich und andere Tipps schaffen Abhilfe

Beim Online-Gaming kommt es nicht nur auf das eigene Können an. Auch die technischen Voraussetzungen…

4 Tagen ago

GenKI-Fortbildung immer noch Mangelware

Fast jedes zweite Unternehmen bietet keinerlei Schulungen an. In den übrigen Betrieben profitieren oft nur…

5 Tagen ago

Netzwerk-Portfolio für das KI-Zeitalter

Huawei stellt auf der Connect Europe 2024 in Paris mit Xinghe Intelligent Network eine erweiterte…

5 Tagen ago

Internet-Tempo in Deutschland: Viel Luft nach oben

Höchste Zeit für eine schnelle Kupfer-Glas-Migration. Bis 2030 soll in Deutschland Glasfaser flächendeckend ausgerollt sein.

5 Tagen ago