Heim >häufiges Problem >Welche Datenbanken verwenden, um Beziehungen zwischen Tabellen herzustellen?

Welche Datenbanken verwenden, um Beziehungen zwischen Tabellen herzustellen?

青灯夜游
青灯夜游Original
2021-01-30 15:14:3016618Durchsuche

Die Datenbank verwendet „Fremdschlüssel“, um Beziehungen zwischen Tabellen herzustellen. Fremdschlüssel können verwendet werden, um eine Zuordnung zwischen der Master-Tabelle und der Slave-Tabelle herzustellen, eine Verbindung für die Daten in den beiden Tabellen herzustellen und die Konsistenz und Integrität der Daten in den beiden Tabellen einzuschränken.

Welche Datenbanken verwenden, um Beziehungen zwischen Tabellen herzustellen?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, MySQL-Version 5.8, Dell G3-Computer.

Die Datenbank verwendet „Fremdschlüssel“, um Beziehungen zwischen Tabellen herzustellen.

Die Fremdschlüsseleinschränkung (FOREIGN KEY) der Datenbank ist ein spezielles Feld der Tabelle, das häufig zusammen mit der Primärschlüsseleinschränkung verwendet wird. Bei zwei Tabellen mit einer zugehörigen Beziehung ist die Tabelle, in der sich der Primärschlüssel im zugehörigen Feld befindet, die Primärtabelle (übergeordnete Tabelle) und die Tabelle, in der sich der Fremdschlüssel befindet, die sekundäre Tabelle (untergeordnete Tabelle).

Fremdschlüssel werden verwendet, um die Beziehung zwischen der Master-Tabelle und der Slave-Tabelle herzustellen, eine Verbindung für die Daten in den beiden Tabellen herzustellen und die Konsistenz und Integrität der Daten in den beiden Tabellen einzuschränken. An einem Obststand gibt es beispielsweise nur vier Obstsorten: Äpfel, Pfirsiche, Pflaumen und Wassermelonen. Wenn Sie dann zum Obststand kommen, um Obst zu kaufen, können Sie nur Äpfel, Pfirsiche, Pflaumen und Wassermelonen auswählen kann keine anderen Früchte kaufen.

Wenn ein Datensatz aus der Haupttabelle gelöscht wird, muss auch der entsprechende Datensatz aus der Tabelle entsprechend geändert werden. Eine Tabelle kann einen oder mehrere Fremdschlüssel haben, und der Fremdschlüssel kann null sein. Wenn er nicht null ist, muss der Wert jedes Fremdschlüssels einem bestimmten Wert des Primärschlüssels in der Haupttabelle entsprechen.

Bei der Definition von Fremdschlüsseln müssen Sie folgende Regeln beachten:

  • Die Haupttabelle muss bereits in der Datenbank vorhanden sein oder die Tabelle sein, die gerade erstellt wird. Im letzteren Fall handelt es sich bei der Master-Tabelle und der Slave-Tabelle um dieselbe Tabelle. Eine solche Tabelle wird als selbstreferenzielle Tabelle bezeichnet, und diese Struktur wird als selbstreferenzielle Integrität bezeichnet.

  • Muss einen Primärschlüssel für die Haupttabelle definieren.

  • Primärschlüssel dürfen keine Nullwerte enthalten, in Fremdschlüsseln sind jedoch Nullwerte zulässig. Das heißt, solange jeder Nicht-Null-Wert des Fremdschlüssels im angegebenen Primärschlüssel vorkommt, ist der Inhalt des Fremdschlüssels korrekt.

  • Geben Sie den Spaltennamen oder eine Kombination von Spaltennamen nach dem Tabellennamen der Haupttabelle an. Diese Spalte oder Spaltenkombination muss der Primärschlüssel oder Kandidatenschlüssel der Haupttabelle sein.

  • Die Anzahl der Spalten im Fremdschlüssel muss mit der Anzahl der Spalten im Primärschlüssel der Haupttabelle übereinstimmen.

  • Der Datentyp der Spalte im Fremdschlüssel muss mit dem Datentyp der entsprechenden Spalte im Primärschlüssel der Haupttabelle übereinstimmen.

Weitere verwandte Artikel finden Sie unter: MySQL-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWelche Datenbanken verwenden, um Beziehungen zwischen Tabellen herzustellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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