MySQLDer Zweck von Fremdschlüsseln besteht darin, die Speicherung in zu steuern Fremdschlüsseltabellen Die Daten verbinden die beiden Tabellen. Sie sind ein sehr wichtiger Teil der MySQL-Datenbank und verdienen unser tiefgreifendes Verständnis. Also, MySQLWelche Rolle spielen Fremdschlüssel? Im Folgenden erfahren Sie, wie Sie die Geheimnisse erkunden.
Wahrung der Datenkonsistenz und -integrität Der Hauptzweck besteht darin, die in der Fremdschlüsseltabelle gespeicherten Daten zu kontrollieren. Um zwei Tabellen zu verknüpfen, können Fremdschlüssel nur auf die Werte der Spalten in der Tabelle verweisen!
a b Zwei Tabellen
aDie Tabelle enthält Kundennummer und Kundenname
b Die Bestellung jedes Kunden wird in der Tabelle gespeichert
Mit dem Fremdschlüssel können Sie nur b bestätigen x kann nur dann aus der Tabelle a gelöscht werden, wenn keine Bestellung für den Kunden x vorliegt
Voraussetzungen für die Erstellung eines FremdschlüsselsDie Spalten dieser Tabelle müssen vom gleichen Typ sein wie der Fremdschlüssel(Der Fremdschlüssel muss der Primärschlüssel des sein Fremdschlüssel).
Geben Sie das Primärschlüssel-Schlüsselwort an:Foreign Key(Spaltenname)
Geben Sie das Fremdschlüssel-Schlüsselwort an :Referenzen <Name der Fremdschlüsseltabelle>(Name der Fremdschlüsselspalte)
Ereignisauslösende Einschränkungenbeim Löschenund beim Aktualisieren, kann Parameter festlegenKaskade(folgt außerhalb Schlüsseländerungen), beschränken(Fremdschlüsseländerungen in der Tabelle einschränken), set Null(Nullwert festlegen) ,Standard festlegen(Standardwert festlegen),[Standard]keine Aktion
BeispielTabellen-Primärschlüssel id Typ int
Tabelle mit Fremdschlüsseln erstellen:create table temp( id int, name char(20), foreign key(id) references outTable(id) on delete cascade on update cascade);
id auf den Fremdschlüssel MySQL fest, siehe die Spalte id der TabelleoutTable. Wenn der Wert des Fremdschlüssels gelöscht wird, wird die entsprechende Spalte in dieser Tabelle gelöscht ; Wenn sich der Wert des Fremdschlüssels ändert, ändert sich der entsprechende Spaltenwert in dieser Tabelle.
HinweisIn MySQLEine Tabelle kann nur einen Primärschlüssel haben und der Primärschlüssel kann aus mehreren Feldern bestehen.
Das Obige ist die Rolle von MySQL Advanced (11) Fremdschlüsseln in der Datenbank Inhalt, weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!