ORA-04091: 表发生了变化, 触发器/函数不能读它

现有表A,B,想通过触发器实现A表进行增删改操作时自动更新B表中一指标的值,B表中指标的值更新为A表中某个字段的拼接值。写完触发器后发现提示ORA-04091: 表发生了变化, 触发器/函数不能读它,有人说加上pragma autonomous_transaction自治事务声明就可以了,实践后发现这样更新出的记录不是最新的,因为表内数据更新和自治事务更新是同步进行,所以触发器触发时A表中数据还未更新,无法实现想要效果,因为要拼接A表中字段并且通过A表中唯一标识与B表比较判断更新方式,所以一定要在触发器中查询A表,是否有别的方法解决这个问题?

建议把代码贴出来看看

你读A表会读本次操作以外的行么?
如果只是读本行,完全不用去重新查A表,而应该用":new.字段名"这种参数,对于这张表的所有字段都是适用的