Rumah  >  Artikel  >  pangkalan data  >  Cara Mengendalikan Kemasukan Kunci Asing dalam Pertanyaan MySQL: Dua Senario Biasa

Cara Mengendalikan Kemasukan Kunci Asing dalam Pertanyaan MySQL: Dua Senario Biasa

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-29 23:10:29138semak imbas

How to Handle Foreign Key Insertion in MySQL Queries: Two Common Scenarios

Cara Menangani Kemasukan Kunci Asing dalam Pertanyaan MySQL

Untuk memasukkan nilai dengan cekap ke dalam jadual dengan kunci asing, mari kita terokai dua senario biasa:

Senario 1: Menambah Pelajar dengan Guru Sedia Ada

Untuk memautkan pelajar baharu kepada guru sedia ada, dapatkan semula kunci asing menggunakan nama guru:

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

Senario 2: Mewujudkan Guru dan Pelajar Baharu secara serentak

Apabila mencipta kedua-dua pelajar baharu dan guru tidak wujud:

<code class="sql">-- Insert a new teacher first
INSERT INTO TAB_TEACHER(name_teacher)
VALUES ('Professor Jade');

-- Retrieve the newly created teacher's ID
SET @teacher_id = LAST_INSERT_ID();

-- Insert the new student with the foreign key pointing to the new teacher
INSERT INTO TAB_STUDENT(name_student, id_teacher_fk)
VALUES ('Mia The Student', @teacher_id);</code>

Dalam senario ini, fungsi LAST_INSERT_ID() digunakan untuk menangkap ID guru yang baru dimasukkan untuk kegunaan segera sebagai kunci asing untuk pelajar.

Atas ialah kandungan terperinci Cara Mengendalikan Kemasukan Kunci Asing dalam Pertanyaan MySQL: Dua Senario Biasa. 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