首页  >  文章  >  数据库  >  如何在 MySQL 表中插入带有外键的值:现有键与新键?

如何在 MySQL 表中插入带有外键的值:现有键与新键?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-10-30 21:24:30482浏览

How to Insert Values with Foreign Keys in MySQL Tables: Existing vs. New Keys?

在 MySQL 表中插入带有外键的值

在数据库管理中,创建带有外键约束的表来建立表之间的关系是很常见的。本问题探讨如何将值插入到具有外键的表中,考虑两种情况。

场景 1:使用现有外键值插入

插入学生记录使用现有教师记录并通过教师姓名检索外键,请使用以下查询:

<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. 插入教师记录:

    <code class="sql">INSERT INTO TAB_TEACHER(name_teacher)
    VALUES ('Professor Jane')</code>
  2. 检索新插入的教师ID:

    <code class="sql">SET @new_teacher_id = LAST_INSERT_ID()</code>
  3. 插入外键设置为新教师 ID 的学生记录:

    <code class="sql">INSERT INTO TAB_STUDENT(name_student, id_teacher_fk)
    VALUES ('Mary The Student', @new_teacher_id)</code>

通过执行这些步骤,链接到新创建的教师记录的新学生记录将被插入到数据库。

以上是如何在 MySQL 表中插入带有外键的值:现有键与新键?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn