zoukankan      html  css  js  c++  java
  • MySql双向触发器

    //增加
    delimiter // 
    create trigger InsertDemo
    AFTER insert on vaccine.demo
    for each row 
    Begin
    if not exists (select * from wechat.demo where wechat.demo.id = new.id) then
    INSERT INTO wechat.demo(wechat.demo.`name`,wechat.demo.`password`) VALUES(new.name,new.password);
    end if; 
    end;//
    delimiter ;
    
    
    delimiter // 
    create trigger InsertDemo
    AFTER insert on wechat.demo
    for each row 
    Begin
    if not exists (select * from vaccine.demo where vaccine.demo.id = new.id) then
    INSERT INTO vaccine.demo(vaccine.demo.`name`,vaccine.demo.`password`) VALUES(new.name,new.password);
    end if; 
    end;//
    delimiter ;
    
     
    
    //删除
    CREATE TRIGGER de
    After DELETE ON vaccine.demo
    FOR EACH ROW
    BEGIN
    if exists (select * from wechat.demo where wechat.demo.id = old.id) then
    DELETE FROM wechat.demo WHERE wechat.demo.id= OLD.id;
    end if;
    END;
    
     
    
    CREATE TRIGGER de
    After DELETE ON wechat.demo 
    FOR EACH ROW
    BEGIN
    if exists (select * from vaccine.demo where vaccine.demo.id = old.id) then
    DELETE FROM vaccine.demo WHERE vaccine.demo.id = OLD.id;
    end if;
    END;
    
    //修改
    
    CREATE TRIGGER up
    After UPDATE ON vaccine.demo
    FOR EACH ROW
    BEGIN
    if not exists (select * from wechat.demo where wechat.demo.id = old.id and wechat.demo.`name`=new.name and wechat.demo.`password`=new.password) then
    update wechat.demo set wechat.demo.`name`=new.name ,wechat.demo.`password`=new.password where wechat.demo.id =old.id;
    end if;
    END;
    
     
    
    CREATE TRIGGER up
    After UPDATE ON wechat.demo 
    FOR EACH ROW
    BEGIN
    if not exists (select * from vaccine.demo where vaccine.demo.id = new.id and vaccine.demo.`name`=new.name and vaccine.demo.`password`=new.password) then
    update vaccine.demo set vaccine.demo.`name`=new.name ,vaccine.demo.`password`=new.password where vaccine.demo.id =old.id;
    end if;
    END;

     注意:设置触发器后save()更新数据会报错,update()成功

    人生得意须尽欢,莫使金樽空对月.
  • 相关阅读:
    Wannafly挑战赛14 F.细胞
    D 勤奋的杨老师(二)(最小割)
    三分算法求最值
    初识最大流
    初识数据结构
    决策型DP
    哈希表
    【BZOJ】1878: [SDOI2009]HH的项链 (主席树)
    【HDU】1520 Anniversary party(树形dp)
    【UVa】1606 Amphiphilic Carbon Molecules(计算几何)
  • 原文地址:https://www.cnblogs.com/luojie-/p/14388487.html
Copyright © 2011-2022 走看看