Cómo abordar la inserción de claves externas en consultas MySQL
Para insertar valores de manera eficiente en tablas con claves externas, exploremos dos escenarios comunes:
Escenario 1: Agregar un estudiante con un maestro existente
Para vincular un nuevo estudiante a un maestro preexistente, recupere la clave externa usando el nombre de un maestro:
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;
Escenario 2: Creación simultánea de un nuevo profesor y un estudiante
Al crear un nuevo estudiante y un profesor inexistente:
-- 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);
En este escenario, la función LAST_INSERT_ID() se utiliza para capturar el ID del profesor recién insertado para su uso inmediato como clave externa para el estudiante.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3