Heim >Datenbank >MySQL-Tutorial >Wie füge ich Werte mit Fremdschlüsseln in MySQL-Tabellen ein?

Wie füge ich Werte mit Fremdschlüsseln in MySQL-Tabellen ein?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-02 13:46:02583Durchsuche

How to Insert Values into MySQL Tables with Foreign Keys?

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!

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