在 MySQL 中向具有外键的表中插入值
在 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>
此查询执行子查询以根据教师的姓名选择教师的“id_teacher”值。然后将返回的值用作学生记录的外键。
情况 2:插入学生和新老师
插入新学生记录对于新教师,您需要执行两个单独的插入语句:
<code class="sql">INSERT INTO TAB_TEACHER(name_teacher) VALUES ('Professor Jane'); INSERT INTO TAB_STUDENT(name_student, id_teacher_fk) SELECT 'Alice The Student', LAST_INSERT_ID();</code>
在第一个语句中,插入新的教师记录。然后在第二个语句中使用“LAST_INSERT_ID()”函数来检索新插入的教师的主键。该键被指定为学生记录的外键。
通过执行以下步骤,您可以确保在将值插入 MySQL 表时保持外键关系。
以上是如何使用外键将值插入MySQL表?的详细内容。更多信息请关注PHP中文网其他相关文章!