发生触发错误的地方-oracle mutating error

问题描述

在实时环境中,有一个屏幕用于授权交易,在授权期间,数据将在表T1中更新。此屏幕没有问题,突然用户告诉您授权过程中抛出错误 ORA-04091:表模式。T1正在变异,触发器/函数可能看不到。而已。该错误不会显示在哪个触发器发生了错误。我在本地环境中进行了测试,没有任何错误。我认为这将是一个数据问题,但如何确定触发它的原因。我已经检查了T1的所有触发器,实际上这些触发器自发生此问题以来已经工作了很长时间。通常,错误显示出发生了哪个触发错误,但不会显示。可以追踪吗?

解决方法

错误堆栈已经包含该信息;要求用户提供它。

例如,它是这样的:

ORA-04091: table SCOTT.EMP is mutating,trigger/function may not see it
ORA-06512: at "SCOTT.TRG_BUD_EMP",line 12
ORA-04088: error during execution of trigger 'SCOTT.TRG_BUD_EMP'