Heim > Datenbank > MySQL-Tutorial > MySQL Advanced (11) Die Rolle von Fremdschlüsseln in der Datenbank

MySQL Advanced (11) Die Rolle von Fremdschlüsseln in der Datenbank

黄舟
Freigeben: 2017-02-10 10:45:50
Original
1479 Leute haben es durchsucht

MySQLDie Rolle von Fremdschlüsseln in der Datenbank

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.

MySQLDie Rolle von Fremdschlüsseln

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!

Beispiel1

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üssels

Die 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änkungen

beim Löschen

und 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

Beispiel

2

outTable

Tabellen-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);
Nach dem Login kopieren
Beschreibung: Legen Sie die Spalte

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.

Hinweis

In MySQL

Eine Tabelle kann nur einen Primärschlüssel haben und der Primärschlüssel kann aus mehreren Feldern bestehen.

Schöne Texte und Bilder



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)!


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage