通过某表某字段的更新指定值的触发来更新另一表字段值。

 通过某表某字段的更新指定值的触发来更新另一表字段值。

CREATE DEFINER=`iZX`@`%` TRIGGER `up_factory` AFTER UPDATE ON `ordinfo `
FOR EACH ROW BEGIN
SET @orderStatus = (SELECT status FROM ordinfo WHERE code=new.code LIMIT 1);
IF @orderStatus=1 THEN
update ordservinfo set is_out=1 where code=new.code;
END IF;
END;

语法注释

DROP TRIGGER IF EXISTS t_make_data; //删除原先的触发器
CREATE TRIGGER t_make_data //创建触发器
BEFORE INSERT ON t_tab1 //触发在这张表新增数据前
FOR EACH ROW
BEGIN  //要执行的sql list 开始
DECLARE number_rand BIGINT(20) DEFAULT 4000 ; 
 
SET number_rand = (SELECT CAST(RAND()*300+300 AS signed) AS rand);//进行随机数
 
SET new.number_rand = number_rand;//要在新增的数据中加入数据
END;//要执行的sql list 结束
原文地址:https://www.cnblogs.com/houweijian/p/10439117.html