通达96 2020-05-18 10:05 采纳率: 100%
浏览 799
已采纳

mysql 触发器插入时条件问题

mysql的触发器:业务如下:现有A B C 三张表,A表和B表是关联关系(主外键关联,A表的外键pid对应B表的主键id)想要在A表下写一个触发器。当A插入一条新的数据时,将A表的两个字段aa和cc的数据以及相关联的B表的字段ee ff gg 插入到C(c表的字段:aa cc ee ff gg)表中。请问这个业务该如何实现啊?
我的初步想法是这个样子的,但是有问题,找不到这个New

CREATE TRIGGER `insert_rate_trigger` AFTER INSERT ON `in_rates` FOR EACH ROW BEGIN
 INSERT INTO hx_info (in_id,in_product_code,in_product_name,agreem_code,contract_code,risk_code,in_pro_short_name,sub_risk_flag,kind_code) 
 SELECT t1.id,t1.in_product_code,t1.in_product_name,t2.string1,t2.string2,t1.risk_code,t1.in_pro_short_name,t1.sub_risk_flag,t1.kind_code
 FROM in_manage t1, in_rate t2
 WHERE t1.id = t2.pid and t2.id = New.id;
 END
;;
delimiter ;

  • 写回答

2条回答 默认 最新

  • 轻点 别打脸 2020-05-18 10:18
    关注

    CREATE TRIGGER save_at_same_time -- 触发器名称
    AFTER INSERT ON A -- 表名 FOR EACH ROW
    BEGIN
    INSERT INTO C (aa,cc,ee,ff,gg)
    SELECT aa,cc,ee,ff,gg FROM A JOIN B WHERE xxx
    END;

    定义一个版本号字段,或者查询条件为最新一条,每次触发触发器的时候,对A表最新一条记录,或者版本号最大的一条记录,进行关联,字段入C库

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 来真人,不要ai!matlab有关常微分方程的问题求解决,
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算