我是靠谱客的博主 顺心唇彩,这篇文章主要介绍触发器知识点总结,现在分享给大家,希望可以做个参考。

前言:项目需求需要数据库A中的user表有信息变动需要同步到数据库B的user表中,为了解决这个问题需要使用Mysql触发器。

定义:触发器是与表有关的数据库对象,在满足定义条件时触发,并执行触发器中定义的语句集合。

作用:可以协助数据库端确保数据的完整性。

语法:

CREATE TRIGGER trigger_name trigger_time trigger_event ON tb_name FOR EACH ROW trigger_stmt
trigger_name:触发器的名称
tirgger_time:触发时机,为BEFORE或者AFTER
trigger_event:触发事件,为INSERT、DELETE或者UPDATE
tb_name:表示建立触发器的表明,就是在哪张表上建立触发器
trigger_stmt:触发器的程序体,可以是一条SQL语句或者是用BEGIN和END包含的多条语句

触发器事件类型 BEFORE INSERT,BEFORE DELETE,BEFORE UPDATE AFTER INSERT,AFTER DELETE,AFTER UPDATE

案例:

drop TRIGGER uums_dev_users_after_update_username;

DELIMITER $

CREATE TRIGGER uums_dev_users_after_update_username AFTER UPDATE ON uums_dev.users FOR EACH ROW

BEGIN

UPDATE uums_dev.users a,

matedata_management_1_0_2_2.sys_user b

SET b.user_name = a.user_name,b.email = a.email,b.mobile = a.mobile, b.department = a.organizationxfERE

a.user_account = b.user_account;

END $

DELIMITER ;



DELIMITER $

drop TRIGGER uums_dev_users_after_delete_user;

CREATE TRIGGER uums_dev_users_after_delete_user AFTER DELETE ON uums_dev.users FOR EACH ROW

BEGIN

DELETE b

FROM

uums_dev.users a,

matedata_management_1_0_2_2.sys_user b

WHERE

a.user_account = b.user_account

AND b.is_local_user = 1

AND a.user_account = NULL;

END $

DELIMITER;

优秀博客:https://www.cnblogs.com/phpper/p/7587031.html

最后

以上就是顺心唇彩最近收集整理的关于触发器知识点总结的全部内容,更多相关触发器知识点总结内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(134)

评论列表共有 0 条评论

立即
投稿
返回
顶部