Rumah >pangkalan data >tutorial mysql >Bagaimanakah anda memasukkan nilai dengan kunci asing dalam MySQL?

Bagaimanakah anda memasukkan nilai dengan kunci asing dalam MySQL?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-29 16:20:02484semak imbas

How do you insert values with foreign keys in MySQL?

Memasukkan Nilai dengan Kunci Asing dalam MySQL

Apabila bekerja dengan pangkalan data hubungan, selalunya perlu memasukkan nilai ke dalam jadual dengan kunci asing. Begini cara mengendalikan dua kes tertentu:

KES 1: Memasukkan Pelajar dengan Guru Sedia Ada

Dalam kes ini, anda tahu nama guru dan perlu dapatkan semula ID mereka daripada jadual TAB_TEACHER. Pertanyaan berikut menggunakan subkueri untuk mendapatkan nilai kunci asing:

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

KES 2: Memasukkan Pelajar dengan Guru Baharu

Untuk kes ini, anda perlu untuk memasukkan kedua-dua guru baharu dan pelajar baharu. Ini memerlukan dua pernyataan INSERT yang berasingan:

<code class="sql">-- Insert the new teacher
INSERT INTO TAB_TEACHER(name_teacher)
VALUES ('John Smith')

-- Get the new teacher's ID
SET @id_teacher_fk = LAST_INSERT_ID()

-- Insert the new student with the foreign key value
INSERT INTO TAB_STUDENT(name_student, id_teacher_fk)
VALUES ('Jane Doe', @id_teacher_fk)</code>

Sila ambil perhatian, sintaks tertentu mungkin berbeza-beza bergantung pada versi MySQL anda. Untuk butiran, rujuk dokumentasi rasmi.

Atas ialah kandungan terperinci Bagaimanakah anda memasukkan nilai dengan kunci asing dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn