本文介绍了Mysql中的跨数据库触发器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
是否可以将触发器应用于MySQL中的跨数据库访问?如果是,请举一个例子.我的目的是如果在database1中插入/更新/删除了任何新数据,则在database2中插入/更新/删除数据.我正在使用MySQL 5.1
Is it possible to apply trigger for cross database access in MySQL If so please give one example. My purpose is to insert/update/delete data in database2 if there is any new data inserted/updated/deleted in database1. I am using MySQL 5.1
推荐答案是的,可以.您可以创建一个过程并在触发器中调用它.程序示例:
Yes, you can. You could make a procedure and call it in your trigger. Procedure example :
DELIMITER // CREATE PROCEDURE delete(in table VARCHAR(300), in db VARCHAR(300), in id INT) BEGIN set @query0 = CONCAT('DELETE FROM ', new_db, '.', tabela, ' WHERE id=',id); PREPARE select_query0 FROM @query0; EXECUTE select_query0; DEALLOCATE PREPARE select_query0; END; // DELIMITER ;然后创建触发器:
CREATE TRIGGER del_trigger BEFORE DELETE ON table FOR EACH ROW BEGIN CALL delete(db, table, OLD.id); END;更多推荐
Mysql中的跨数据库触发器
发布评论