概述
前言:项目需求需要数据库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
最后
以上就是顺心唇彩为你收集整理的触发器知识点总结的全部内容,希望文章能够帮你解决触发器知识点总结所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复