zoukankan      html  css  js  c++  java
  • 触发器初接触-同步两个表的指定字段

    博客已经申请5个月了,= = 到现在一篇随笔都没写过。那就写写吧。

    前几天,一位朋友说他有个需求:同步两个表的指定字段,问有什么办法。后来用触发器来实现了下,之前也没写过,所以还是在这里记录下吧。

    需求: 有表 tp_userinfo ,ims_card_members  其中对应关联字段为 credit1 《=》total_score

          就是说 表 tp_userinfo的credit1字段更新时,表ims_card_members对应的total_score也需要更新;反正亦然。

    解决: 为两个表创建触发器,字段更新时另一个表的对应字段。

    注意的地方:因为相互触发,所以update前注意判断内容是否变动过,不然就是死循环了。

    小白写代码mysql 实现:

    drop trigger if exists tp_userinfo_trigger;
    -- tp_userinfo trigger
    create trigger tp_userinfo_trigger after UPDATE
        on tp_userinfo for each row 
    begin 
        set @credit1 = (select credit1 from ims_card_members where old.wecha_id = from_user limit 1);          
        IF(@credit1 <> new.total_score) THEN
        update ims_card_members  set credit1 = new.total_score where from_user = old.wecha_id;
        end if;
    
    end;
    
    drop trigger if exists ims_card_members_trigger;
    -- ims_card_members trigger
    
    create trigger ims_card_members_trigger after UPDATE
        on ims_card_members for each row 
    
    begin 
        set @total_score = (select total_score from tp_userinfo where wecha_id = old.from_user limit 1);          
        IF(@total_score <> new.credit1) THEN
        update tp_userinfo set total_score = new.credit1 where wecha_id = old.from_user;
        end if;
    
    end;
  • 相关阅读:
    PHP版本VC6与VC9/VC11/VC14、Thread Safe与None-Thread Safe等的区别
    Django 开发------django-crontab实现服务端的定时任务
    django HTML 数据处理
    HTML 罗盘式时钟
    Tcpdump 常用命令、参数记录
    jquery 实现 <imput>标签 密码框显示/隐藏密码功能
    Django 实现分页功能(django 2.2.7 python 3.7.5 )
    bootstrap 4 学习笔记
    IIS属性解析
    IIS站点权限设置
  • 原文地址:https://www.cnblogs.com/jeffreyluo/p/4780767.html
Copyright © 2011-2022 走看看