mysql的触发器

触发器也是数据库中比较重要的部分,它的出现简化了某些操作。比如当一个学生被一个学校录取后,它的基本信息就要录入学校的数据库,数据可能录入到不同的表中,这样我们可以创建一个触发器,当学生的学籍信息被添加后,就要触发触发器,触发器去执行一系列的SQL语句,比如说添加学生到学校的班级表,宿舍住宿表等。


DELIMITER $$

CREATE
    TRIGGER `jeesite_mysql`.`hyTrigger` BEFORE UPDATE
    ON `jeesite_mysql`.`tywhuiy`
    FOR EACH ROW BEGIN
	DECLARE top_hyid VARCHAR(50) DEFAULT '';/*上一级会员ID*/
	DECLARE ss_hyid VARCHAR(50) DEFAULT '';/*上上一级会员ID*/
	
	DECLARE add_hyjf INT(11);/*给充值加会员积分*/
	DECLARE add_top_jf INT(11);/*给充值会员的上一级会员加的积分*/
	DECLARE add_ss_jf INT(11);/*给充值会员的上上一级会员加的积分*/
	IF (new.DANQZT='1') 
	THEN
		SELECT `HYJG`,`ZJHYFL`,`JJHYFL` INTO add_hyjf,add_top_jf,add_ss_jf FROM`jeesite_mysql`.`tyhjj` LIMIT 0,1;
		SELECT `TYW_ID` INTO  top_hyid FROM `jeesite_mysql`.`tywhuiy` WHERE id=new.id LIMIT 0,1;
		SELECT `TYW_ID` INTO  ss_hyid FROM `jeesite_mysql`.`tywhuiy` WHERE id=top_hyid LIMIT 0,1;
		INSERT INTO `jeesite_mysql`.`thyjfjl` (`ID`,`TYW_ID`,`JIF`,`HUODTM`,`DHBS`) VALUES (REPLACE(UUID(), '-', ''),new.id,add_hyjf,NOW(),'0');
		IF (top_hyid <> '') THEN
			INSERT INTO `jeesite_mysql`.`thyjfjl` (`ID`,`TYW_ID`,`JIF`,`HUODTM`,`DHBS`) VALUES (REPLACE(UUID(), '-', ''),top_hyid,add_top_jf ,NOW(),'0') ;
			 IF (ss_hyid <> '') THEN 
				INSERT INTO `jeesite_mysql`.`thyjfjl` (`ID`,`TYW_ID`,`JIF`,`HUODTM`,`DHBS`) VALUES (REPLACE(UUID(), '-', ''),ss_hyid,add_ss_jf,NOW(),'0') ;
			 END IF;
		END IF;
		
	END IF;
	
	
    END$$

DELIMITER ;

我写的是一个会员充值成功后进行对会员的加积分的操作。那个会员是我发展的,我就是那个会员的上一级会员,发展的会员,如果他充值的话,也会给你增加适当的积分。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值