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 ;
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库
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。