首頁  >  文章  >  資料庫  >  如何將資料插入具有外鍵約束的MySQL表中?

如何將資料插入具有外鍵約束的MySQL表中?

Barbara Streisand
Barbara Streisand原創
2024-10-31 04:27:31359瀏覽

How to Insert Data into MySQL Tables with Foreign Key Constraints?

在MySQL中向有外鍵約束的表中插入資料

涉及外鍵關係的表在插入資料時需要特別考慮,以保證資料的完整性。讓我們探討如何在MySQL 中處理兩種情況下的插入:

情況1:插入具有預先存在的教師的學生

如果您有要插入的學生記錄及其所屬的教師已經存在,您可以使用子查詢根據教師姓名檢索外鍵(id_teacher):

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

案例2:插入帶有新教師的學生

如果學生是資料庫中尚不存在教師,您需要執行兩次單獨的插入操作:

  1. 將新教師記錄插入到TAB_TEACHER 表中:
<code class="sql">INSERT INTO TAB_TEACHER(name_teacher)
VALUES ('Dr. Smith')</code>
  1. 插入學生時使用新建立的老師的id(id_teacher)作為外鍵:
<code class="sql">INSERT INTO TAB_STUDENT(name_student, id_teacher_fk)
VALUES ('Mary The Student', LAST_INSERT_ID())</code>

以上是如何將資料插入具有外鍵約束的MySQL表中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn