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

Mary-Kate Olsen
Lepaskan: 2024-10-29 23:10:29
asal
137 orang telah melayarinya

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>
Salin selepas log masuk

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>
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!