MySQL InnoDB-Fremdschlüssel referenziert eine andere Datenbank
In MySQL InnoDB ist es möglich, Fremdschlüsselbeziehungen zwischen Tabellen in verschiedenen Datenbanken einzurichten. Mit dieser Funktion können Sie referenzielle Integrität über Datenbankgrenzen hinweg erzwingen und so die Datenkonsistenz sicherstellen.
Methode:
Um einen Fremdschlüssel zu erstellen, der auf eine Tabelle in einer anderen Datenbank verweist, Geben Sie einfach den Datenbanknamen gefolgt vom Tabellennamen in der FOREIGN KEY-Klausel an. Die Syntax lautet wie folgt:
ALTER TABLE your_table ADD FOREIGN KEY (your_column) REFERENCES otherdb.othertable(other_column);
Betrachten Sie beispielsweise zwei Datenbanken: db1 und db2. Angenommen, wir haben eine Tabelle „users“ in db1 und eine Tabelle „orders“ in db2. Wir können wie folgt einen Fremdschlüssel in der Auftragstabelle einrichten, um auf die Benutzertabelle zu verweisen:
ALTER TABLE orders ADD FOREIGN KEY (user_id) REFERENCES db1.users(id);
Dieser Fremdschlüssel stellt sicher, dass jede user_id in der Auftragstabelle eine entsprechende ID in der Benutzertabelle in db1 hat.
Hinweis:
Die an der Fremdschlüsselbeziehung beteiligten Datenbanken müssen sich auf demselben Server befinden. Serverübergreifende Fremdschlüssel werden in MySQL InnoDB nicht unterstützt.
Das obige ist der detaillierte Inhalt vonKönnen MySQL InnoDB-Fremdschlüssel verschiedene Datenbanken umfassen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!