mysql触发器-同服务器表同步事件

本文介绍了MySQL触发器的基本概念及其使用方法。包括触发器的创建、触发时机与事件、触发器的作用表以及触发器的执行间隔等内容,并通过实例展示了如何实现跨表的数据同步。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

通常用于处理同一个服务器表同步事件

不同服务器可设置主从库,看情况使用

~~语句解释~~

CREATE TRIGGER<触发器名称> --触发器名字,和MySQL中其他对象的命名方式基本相象.最多64个字符,

{ BEFORE | AFTER }  --触发器有执行的时间设置:可以设置为事件发生前或后。
{ INSERT | UPDATE | DELETE }  --同样也能设定触发的事件:它们可以在执行insert、update或delete的过程中触发。
ON <数据库.表名称>  --触发器是属于某一个表的:当在这个表上执行插入、 更新或删除操作的时候就导致触发器的激活. 注意:我们不能给同一张表的同一个事件安排两个触发器。
FOR EACH ROW  --触发器的执行间隔:FOR EACH ROW子句通知触发器 每隔一行执行一次动作,而不是对整个表执行一次。
<触发器SQL语句>  --触发器包含所要触发的SQL语句:这里的语句可以是任何合法的语句, 包括复合语句,但是这里的语句受的限制和函数的一样。


~~例子~~插入~~

DELIMITER $

DROP TRIGGER IF EXISTS 触发器名称;

CREATE TRIGGER  触发器名称 

AFTER INSERT ON  数据库A.test

FOR EACH ROW  

BEGIN

     insert into 数据库B.test(id) values(new.id);

END$

DELIMITER;




~~例子~~删除~~

DELIMITER $

DROP TRIGGER IF EXISTS 触发器名称;

CREATE TRIGGER  触发器名称 

AFTER DELETE ON  数据库A.test

FOR EACH ROW

BEGIN

      delete from 数据库B.test where id=old.id;

END$ 

DELIMITER;




 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Venvis

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值