mysql 触发器

来源:互联网 发布:linux 建c文件 编辑:程序博客网 时间:2024/06/08 11:16

添加

CREATE TRIGGER 触发名称 BEFORE 关键字 ON 表名  FOR EACH ROW
BEGIN
    IF new.much > (SELECT gnum FROM g WHERE gname=new.gname) THEN
    SET new.much = (SELECT gnum FROM g WHERE gname=new.gname);
    UPDATE g SET gnum=gnum-new.much WHERE gname=new.gname;
ELSE
    UPDATE g set gnum=gnum-new.much WHERE gname=new.gname;
END IF;
END;




修改

CREATE TRIGGER up BEFORE UPDATE ON o FOR EACH ROW

BEGIN
    IF new.much > ((SELECT gnum FROM g WHERE gname=new.gname)+old.much) THEN
    SET new.much = ((SELECT gnum FROM g WHERE gname=new.gname)+old.much);
    UPDATE g SET gnum=gnum+old.much-new.much WHERE gname=new.gname;
ELSE
    UPDATE g SET gnum=gnum+old.much-new.much WHERE gname=new.gname;
END IF;
END;



删除触发器

DROP TRIGGER 触发名称;


0 0
原创粉丝点击