mysql加了触发器之后怎么update_mysql 触发器插入数据可以,但是update没有成功,update前后的insert都执行了...

DROP TRIGGER IF EXISTS t_afterinsert_invitation_trigger ;

DELIMITER $$

CREATE TRIGGER t_afterinsert_invitation_trigger

AFTER INSERT ON invitation_trigger

FOR EACH ROW

BEGIN

declare _mid int;

declare _parent_level int;

declare _mids int;

declare _l int;

declare _r varchar(50);

set _mid = New.mid;

set _parent_level = New.midlevel;

set _mids = New.mids;INSERT INTO `test`.`invitation` (`id`, `mid`, `midlevel`, `mids`, `midslevel`) VALUES (New.id, _mid, _parent_level, _mids, New.midslevel);UPDATE invitation _up INNER JOIN (SELECT T2.midFROM ( SELECT _r AS _mids, (SELECT _r = mid FROM invitation WHERE mids = _mids) AS mid, _l = _l + 1 AS lvl FROM (SELECT _r = New.mid, _l = 0) vars, invitation h WHERE _r <> 0) T1 JOIN invitation T2 ON T1._mids = T2.mids AND T2.midlevel > New.midlevelORDER BY T1.lvl ASC) BON _up.mid = B.midSET _up.midlevel = New.midlevel;INSERT INTO `test`.`invitation` (`id`, `mid`, `midlevel`, `mids`, `midslevel`) VALUES ('42', '14', '2', '43', '3');

END$$

DELIMITER ;

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值