Таблицы, включающие отношения внешнего ключа, требуют особого внимания при вставке данных, чтобы гарантировать целостность данных. Давайте рассмотрим, как обрабатывать вставки в MySQL для двух сценариев:
Если у вас есть запись ученика для вставки и учитель, которому она принадлежит уже существует, вы можете использовать подзапрос для получения внешнего ключа (id_teacher) на основе имени учителя:
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
Если учитель учащегося еще не существует в базе данных, вам необходимо выполнить две отдельные операции вставки:
INSERT INTO TAB_TEACHER(name_teacher)
VALUES ('Dr. Smith')
INSERT INTO TAB_STUDENT(name_student, id_teacher_fk)
VALUES ('Mary The Student', LAST_INSERT_ID())
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3