Werte in Tabellen mit Fremdschlüsseln in MySQL einfügen
In MySQL ist es beim Erstellen von Tabellen mit Fremdschlüsselbeziehungen wichtig zu verstehen, wie das geht Werte richtig eingeben. Hier ist eine Aufschlüsselung, wie mit zwei Szenarios umgegangen wird:
Fall 1: Einfügen eines Schülers mit einem bereits vorhandenen Lehrer
So fügen Sie einen Schülerdatensatz mit einer Fremdschlüsselreferenzierung ein Rufen Sie bei einem vorhandenen Lehrer den Primärschlüssel des Lehrers basierend auf seinem Namen ab:
<code class="sql">INSERT INTO TAB_STUDENT(name_student, id_teacher_fk) SELECT 'Joe The Student', id_teacher FROM TAB_TEACHER WHERE name_teacher = 'Professor Jack' LIMIT 1;</code>
Diese Abfrage führt eine Unterabfrage durch, um den „id_teacher“-Wert des Lehrers basierend auf seinem Namen auszuwählen. Der zurückgegebene Wert wird dann als Fremdschlüssel für den Schülerdatensatz verwendet.
Fall 2: Einfügen eines Schülers mit einem neuen Lehrer
Zum Einfügen eines neuen Schülerdatensatzes Bei einem neuen Lehrer müssen Sie zwei separate Einfügeanweisungen ausführen:
<code class="sql">INSERT INTO TAB_TEACHER(name_teacher) VALUES ('Professor Jane'); INSERT INTO TAB_STUDENT(name_student, id_teacher_fk) SELECT 'Alice The Student', LAST_INSERT_ID();</code>
In der ersten Anweisung wird ein neuer Lehrerdatensatz eingefügt. In der zweiten Anweisung wird dann die Funktion „LAST_INSERT_ID()“ verwendet, um den Primärschlüssel des neu eingefügten Lehrers abzurufen. Dieser Schlüssel wird als Fremdschlüssel für den Studentendatensatz zugewiesen.
Durch Befolgen dieser Schritte können Sie sicherstellen, dass Fremdschlüsselbeziehungen beibehalten werden, wenn Werte in MySQL-Tabellen eingefügt werden.
Das obige ist der detaillierte Inhalt vonWie füge ich Werte mit Fremdschlüsseln in MySQL-Tabellen ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!