„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie implementiert man zusammengesetzte Fremdschlüssel in MySQL?

Wie implementiert man zusammengesetzte Fremdschlüssel in MySQL?

Veröffentlicht am 26.12.2024
Durchsuche:742

How to Implement Composite Foreign Keys in MySQL?

Implementieren zusammengesetzter Fremdschlüssel in SQL

Ein gängiges Datenbankdesign beinhaltet die Herstellung von Beziehungen zwischen Tabellen mithilfe zusammengesetzter Schlüssel. Ein zusammengesetzter Schlüssel ist eine Kombination aus mehreren Spalten, die einen Datensatz in einer Tabelle eindeutig identifiziert. In diesem Szenario haben Sie zwei Tabellen, Tutorial und Gruppe, in denen Sie den zusammengesetzten eindeutigen Schlüssel im Tutorial mit einem Feld in der Gruppe verknüpfen müssen.

Laut MySQL-Dokumentation unterstützt MySQL die Zuordnung von Fremdschlüsseln zu zusammengesetzten Schlüsseln. Um diese Beziehung herzustellen, müssen Sie jedoch mehrere Spalten in der referenzierenden Tabelle (Gruppe) erstellen, die mit den Primärschlüsselspalten in der referenzierten Tabelle übereinstimmen (Tutorial).

Hier sind die Schritte zum Erstellen Fremdschlüsselzuordnung:

-- Alter the 'group' table to add the composite foreign key columns
ALTER TABLE `group`
ADD COLUMN `beggingTime` time NOT NULL,
ADD COLUMN `day` varchar(8) NOT NULL,
ADD COLUMN `tutorId` int(3) NOT NULL;

-- Add the foreign key constraint
ALTER TABLE `group`
ADD FOREIGN KEY (`beggingTime`, `day`, `tutorId`)
REFERENCES `tutorial`(`beggingTime`, `day`, `tutorId`);

Durch die Erstellung der drei Fremdschlüsselspalten (beggingTime, day und tutorId) in der Gruppentabelle stellen Sie die Beziehung mit dem her zusammengesetzter Primärschlüssel in der Tutorial-Tabelle. Dadurch können Sie Daten aus beiden Tabellen basierend auf dem zusammengesetzten Schlüssel verknüpfen und abrufen.

Es ist wichtig zu beachten, dass die Verwendung zusammengesetzter Fremdschlüssel zwar technisch unterstützt wird, es jedoch allgemein empfohlen wird, stattdessen einen einspaltigen Primärschlüssel zu verwenden. Dies liegt daran, dass zusammengesetzte Schlüssel die Leistung beeinträchtigen und die Komplexität Ihres Datenbankdesigns erhöhen können. Erwägen Sie nach Möglichkeit eine Neuarchitektur Ihrer Tabellen, um im Tutorial einen einspaltigen Primärschlüssel zu verwenden.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3