MySQL 쿼리에서 외래 키 삽입을 해결하는 방법
외래 키가 있는 테이블에 값을 효율적으로 삽입하려면 두 가지 일반적인 시나리오를 살펴보겠습니다.
시나리오 1: 기존 교사와 학생 추가
새 학생을 기존 교사에 연결하려면 교사 이름을 사용하여 외래 키를 검색합니다.
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;
시나리오 2: 새로운 교사와 학생을 동시에 생성
새로운 학생과 존재하지 않는 교사를 모두 생성하는 경우:
-- 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);
이 시나리오에서 LAST_INSERT_ID() 함수는 학생의 외래 키로 즉시 사용하기 위해 새로 삽입된 교사의 ID를 캡처하는 데 사용됩니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3