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()成功

    人生得意须尽欢,莫使金樽空对月.
  • 相关阅读:
    [Objective-C语言教程]决策结构(10)
    [Objective-C语言教程]循环语句(9)
    [Objective-C语言教程]关系运算符(8)
    [Objective-C语言教程]常量(7)
    [Objective-C语言教程]变量(6)
    [Objective-C语言教程]数据类型(5)
    转 Apache Ant 实现自动化部署
    转 智能化运维最佳实践-自动化
    ANT 操控 ORACLE数据库实践
    转: Ant 脚本的结构化设计
  • 原文地址:https://www.cnblogs.com/luojie-/p/14388487.html
Copyright © 2011-2022 走看看