Heim > Datenbank > navicat > Hauptteil

So erstellen Sie Fremdschlüssel in Navicat

angryTom
Freigeben: 2019-08-08 11:59:59
Original
10021 Leute haben es durchsucht

So erstellen Sie Fremdschlüssel in Navicat

Der Datenbankfremdschlüssel stellt die relevante Verbindung zwischen zwei Beziehungen dar. Die Tabelle mit dem Fremdschlüssel einer anderen Beziehung als Primärschlüssel wird als Master-Tabelle bezeichnet, und die Tabelle mit dem Fremdschlüssel wird als Slave-Tabelle der Master-Tabelle bezeichnet. Im Folgenden stellen wir Ihnen vor, wie Sie Fremdschlüssel in Navicat erstellen.

Empfohlenes Tutorial: MySQL-Einführungsvideo-Tutorial

1. Öffnen Sie navicat und wählen Sie die Datenbanktabelle aus, die Sie bedienen möchten , klicken Sie mit der rechten Maustaste und wählen Sie „Tabelle entwerfen“.

So erstellen Sie Fremdschlüssel in Navicat

2. Klicken Sie auf die Fremdschlüsseloption, um mit dem Festlegen von Fremdschlüsseln zu beginnen.

So erstellen Sie Fremdschlüssel in Navicat

Es gibt insgesamt sieben Spalten. Lassen Sie uns kurz die Bedeutung dieser Spalten vorstellen:

„Name“: Sie müssen ihn nicht ausfüllen. Das System generiert ihn automatisch, nachdem Sie ihn erfolgreich gespeichert haben.

„Feld“: Welchen Schlüssel Sie als Fremdschlüssel festlegen möchten.

„Referenzdatenbank“: Mit Fremdschlüsseln verknüpfte Datenbank.

„Referenztabelle“: zugehörige Tabelle

„Referenzfeld“: zugehöriges Feld,

„Beim Löschen“: die beim Löschen ausgewählte Aktion.

„Beim Aktualisieren“: Dies ist die Aktion, die beim Aktualisieren ausgewählt wird.

Erweiterte Informationen: Die Rolle von Fremdschlüsseln

 Aufrechterhaltung der Datenkonsistenz und -integrität. Der Hauptzweck besteht darin, die Speicherung von zu steuern Fremdschlüsseltabellen Daten in . Um zwei Tabellen zu verknüpfen, kann der Fremdschlüssel nur auf die Werte der Spalten in der Tabelle verweisen oder Nullwerte verwenden.

Wenn kein Fremdschlüssel verwendet wird, wird ein Wert (z. B. 20140999999) in das Feld „Studentennummer“ von Tabelle 2 eingefügt, dieser Wert ist jedoch in Tabelle 1 nicht vorhanden. Zu diesem Zeitpunkt lässt die Datenbank das Einfügen zu und blockiert den eingefügten Wert nicht. Die Daten werden auf Beziehungen überprüft. Wenn Sie jedoch einen Fremdschlüssel einrichten, muss der Wert, den Sie in das Feld „Studierendennummer“ von Tabelle 2 eingeben, im Feld „Studierendennummer“ von Tabelle 1 gefunden werden. Wenn Sie ein bestimmtes Feld für die Schülernummer in Tabelle 1 löschen möchten, müssen Sie gleichzeitig sicherstellen, dass es in Tabelle 2 keine Spalte gibt, die auf den Feldwert verweist, andernfalls wird es nicht gelöscht. Dies wird als Aufrechterhaltung der Datenkonsistenz und -integrität bezeichnet. Wie rechts gezeigt: Wenn Tabelle 2 immer noch auf einen bestimmten Studentenausweis in Tabelle 1 verweist, Sie aber den Studentenausweis in Tabelle 1 löschen, weiß Tabelle 2 nicht, welchem ​​Studenten der Studentenausweis entspricht.

Tabellen in der Datenbank müssen den Spezifikationen entsprechen, um Datenredundanz, Einfügeanomalien, Löschanomalien und andere Phänomene zu verhindern. Der kanonische Prozess ist der Prozess der Zerlegung der Tabelle. Nach der Zerlegung erscheinen die repräsentativen Attribute einer Sache in verschiedenen Tabellen. Natürlich sollten sie konsistent sein. Die repräsentativen Daten eines Schülers sind beispielsweise die Schülernummer 012, die in der Schülertabelle 012 ist und in der Notentabelle auch 012 sein sollte. Diese Konsistenz wird durch Fremdschlüssel erreicht. Die Funktion eines Fremdschlüssels ist: Sein Wert muss der Primärschlüsselwert einer anderen Tabelle sein. Die Studierendennummer ist der Primärschlüssel in der Studierendentabelle und der Fremdschlüssel in der Notentabelle. Die Schülernummer in der Notenliste muss mit der Schülernummer in der Schülerliste übereinstimmen. Daher stimmen die Schülerzahl in der Schülertabelle und die Schülerzahl in der Notentabelle überein. Es ist intuitiv zu verstehen, dass die Funktion von Fremdschlüsseln darin besteht, die Vorzeichenkonsistenz derselben Sache in verschiedenen Tabellen zu erreichen. 2. Funktionale Realisierung zweier Tabellen, die durch Fremdschlüssel verbunden sind. Bei getrennter Bedienung wird die Fremdschlüsselfunktion durch zwei Methoden realisiert [4]: ​​

Ausführung verhindern

●Fügen Sie eine neue Zeile aus der Tabelle ein, und der Fremdschlüsselwert ist nicht der Primärschlüsselwert der Haupttabelle, was das Einfügen verhindert.

●Ändern Sie den Fremdschlüsselwert Die Tabelle und der neue Wert sind nicht der Primärschlüssel der Haupttabelle. Der Wert verhindert eine Änderung Slave-Tabelle (wenn Sie sie löschen möchten, müssen Sie zuerst die relevanten Zeilen aus der Slave-Tabelle löschen);

●Die Master-Tabelle ändert den Primärschlüsselwert Die Änderung ist blockiert (wenn Sie sie ändern möchten, müssen Sie zuerst die entsprechenden Zeilen aus der Slave-Tabelle löschen).

Kaskadenausführung

●Löschen Sie Zeilen aus der Haupttabelle und löschen Sie verwandte Zeilen gemeinsam aus der Tabelle.

●Ändern Sie den Primärschlüsselwert in Ändern Sie in der Haupttabelle gemeinsam die Fremdschlüsselwerte verwandter Zeilen aus der Tabelle. Den Benutzern stehen zwei Methoden zur Auswahl zur Verfügung. Egal welche Methode gewählt wird, es werden keine zusätzlichen Zeilen in der Tabelle angezeigt. Aus einer anderen Perspektive wird dasselbe erreicht, indem die Inkonsistenz zwischen den Flags in der Slave-Tabelle und der Master-Tabelle zurückgewiesen wird, um Konsistenz mit den Flags in der Master-Tabelle zu erreichen.

●Zwei Implementierungsmethoden, wählen Sie aus den folgenden Methoden:

●Schnittstelle: Richten Sie zwei Auswahlfelder für Kaskadenaktualisierung und Kaskadenlöschung ein. Wenn ausgewählt, wird die Kaskade ausgeführt, andernfalls wird sie ausgeführt ausgewählt, wird die Ausführung blockiert.

●Befehl: Seien E)kSCM)E und RESTRICT zwei optionale Optionen, CASCADE bedeutet Kaskadenausführung und RESTRICT bedeutet Ausführung verhindern.

Das obige ist der detaillierte Inhalt vonSo erstellen Sie Fremdschlüssel in Navicat. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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