【发布时间】:2013-05-13 23:39:53
【问题描述】:
我在 table tbl_campboss_report 上有一个插入后触发器,但它给了我
tbl_campboss_report 正在变异,触发器/函数可能看不到它
这是我的触发器:
BEGIN
update tbl_campboss_report c set c.units=(select b.units from tbl_campboss_master b where b.details=:new.details);
END;
谁能帮我解决这个问题?
提前致谢
【问题讨论】:
-
您无法更新调用触发器的相同记录,
details是唯一键吗?您是否要更新多条记录? -
详情不是PK,我只更新了一条记录
-
如果您要更新的记录与您刚刚插入的记录相同,请使用@Noel 的answer
-
如果在插入行的 SQL 中包含该列的填充,这将是一个更有效的操作。该值的来源也将更加明显。当然,根本不填充它并在需要时从 tbl_campboss_master 表中获取值可能会更有效。