mysql库表的触发器表名_MySQL 触发器,实现不同数据库,不同表名,表结构不同,数据实时同步...

创建触发器:

CREATE TRIGGER trigger_name

trigger_time

trigger_event ON tbl_name

FOR EACH ROW

trigger_stmt

trigger_name:标识触发器名称,用户自行指定;

trigger_time:标识触发时机,取值为 BEFORE 或 AFTER;

trigger_event:标识触发事件,取值为 INSERT、UPDATE 或 DELETE;

tbl_name:标识建立触发器的表名,即在哪张表上建立触发器;

trigger_stmt:触发器程序体,可以是一句SQL语句,或者用 BEGIN 和 END 包含的多条语句。

INSERT触发器

INSERT触发器可以使用NEW.列名  读取插入的新值,也可以修改它。

UPDATE触发器

可以使用 NEW.列名 获取新值,也可以使用  OLD.列名  获取旧值。

DELETE触发器

可以使用  OLD.列名  获取旧表中的值(只读)。

用处:

在BEFORE触发器中进行一些数据的校验工作(大小写、数据类型、格式等)

在AFTER触发器中进行一些后续的统计工作(行数、总数、平均值等)

1. 插入数据:

DELIMITER $

CREATE TRIGGER tr_insert_zcarticlebody AFTER INSERT ON zcarticlebody FOR EACH ROW

BEGIN

-- 插入目标表

INSERT INTO

china_dev.cb_article_body(id,page_titles,body_text,copy_image_flag)

VALUES

(new.ID,new.PageTitles,new.BodyText,new.CopyImageFlag);

END;

$

DELIMITER;

tr_insert_zcarticlebody :触发器名称;

zcarticlebody :建立触发器的表名;

chinabim_dev :数据库名称;

cb_article_body :触发的表名,即目标表名;

2. 更改数据:

DELIMITER $

CREATE TRIGGER tr_update_zcarticlebody AFTER UPDATE ON zcarticlebody FOR EACH ROW

BEGIN

UPDATE china_dev.cb_article_body

SET page_titles = new.PageTitles,body_text = new.BodyText,copy_image_flag = new.CopyImageFlag

WHERE id = new.ID;

END

$

DELIMITER;

tr_insert_zcarticlebody :触发器名称;

zcarticlebody :建立触发器的表名;

chinabim_dev :数据库名称;

cb_article_body :触发的表名,即目标表名;

3. 删除数据:

DELIMITER $

CREATE TRIGGER tr_del_zcarticlebody AFTER DELETE ON zcarticlebody FOR EACH ROW

BEGIN

-- INSE

DELETE FROM china_dev.cb_article_body WHERE id = old.ID;

END

$

DELIMITER ;

COMMIT;

tr_insert_zcarticlebody :触发器名称;

zcarticlebody :建立触发器的表名;

chinabim_dev :数据库名称;

cb_article_body :触发的表名,即目标表名;

Navicat for MySQL

7f6600c8eddc28c8ba16397919212ca8.png

8f972797673a7dd8f72ee684ece32890.png

1e415e55fae7401ade7a838e2295ea94.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值