Rumah >pangkalan data >tutorial mysql >Bagaimanakah anda memasukkan nilai dengan kunci asing dalam 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!