다른 테이블에 행을 삽입하도록 MySQL 트리거를 프로그래밍하는 방법
소개:
MySQL 트리거는 데이터베이스 이벤트에 대한 응답으로 작업을 자동화하는 강력한 메커니즘입니다. 트리거된 작업에는 다른 테이블에 행을 삽입하는 작업이 포함될 수 있으며 이는 데이터 일관성을 유지할 때 일반적으로 필요합니다. 이 문서에서는 특정 이벤트가 발생할 때 다른 테이블에 행을 삽입하기 위해 MySQL 트리거를 생성하는 과정을 안내합니다.
LAST_INSERT_ID() 및 데이터 저장소:
저장 프로시저 사용:
기본 트리거 구조:
다음은 삽입할 MySQL 트리거의 기본 구조입니다. 행을 다른 테이블에 추가:
CREATE TRIGGER trigger_name AFTER/BEFORE INSERT/UPDATE/DELETE ON table_name FOR EACH ROW BEGIN -- Insert rows into another table using data from the last inserted row. INSERT INTO other_table (column1, column2, ...) VALUES (new.column1, new.column2, ...); END
구현 예:
두 개의 테이블, 댓글 및 활동이 있다고 가정합니다. 새 댓글이 댓글 테이블에 삽입되면 활동 테이블에 댓글 ID와 사용자 ID를 기록하려고 합니다. 해당 트리거는 다음과 같습니다.
CREATE TRIGGER comments_after_ins_trig AFTER INSERT ON comments FOR EACH ROW BEGIN DECLARE activity_id INT; DECLARE user_id INT; SET activity_id = LAST_INSERT_ID(); SET user_id = NEW.user_id; INSERT INTO activities (comment_id, user_id) VALUES (activity_id, user_id); END
결론:
이 단계를 따르면 특정 이벤트에 따라 다른 테이블에 행을 자동으로 삽입하도록 MySQL 트리거를 프로그래밍할 수 있습니다. 이 기술은 데이터 일관성을 유지하고 복잡한 데이터 처리 작업을 구현하는 데 중요합니다.
위 내용은 별도의 테이블에 데이터를 삽입하기 위해 MySQL 트리거를 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!