Exception handling 未找到未在触发器中执行的数据

Exception handling 未找到未在触发器中执行的数据,exception-handling,triggers,oracle11g,Exception Handling,Triggers,Oracle11g,以下部分是我的触发器的相关部分 BEGIN SELECT rec_date INTO lv_rec_date FROM receipts_table WHERE receipts_number = new.receipts_number EXCEPTION WHEN NO_DATA_FOUND THEN lv_partial := FALSE; END; 问题是,当它执行这个部分时,我没有很好地捕获它,而是得到以下错误 ERROR at line 1: ORA-01403: no da

以下部分是我的触发器的相关部分

BEGIN SELECT rec_date
INTO lv_rec_date
FROM receipts_table
WHERE  receipts_number = new.receipts_number
EXCEPTION WHEN NO_DATA_FOUND THEN
   lv_partial := FALSE;
END;
问题是,当它执行这个部分时,我没有很好地捕获它,而是得到以下错误

ERROR at line 1:
ORA-01403: no data found
ORA-06512: at "APP.BEF_ROW_TRIGGER", line 66
ORA-04088: error during execution of trigger 'APP.BEF_ROW_TRIGGER'
这在Oracle 10及以下版本中运行良好。我检查了用户源中的第66行,当没有找到第66行数据时,该触发器正好是异常。它似乎遇到了NO_DATA_FOUND错误,但错误捕获似乎不起作用


Oracle 11g中是否有我应该注意的任何更改?

没关系,假警报。错误出现在本节之后调用的过程的第66行,但错误消息显示它来自触发器。哎哟


很抱歉给您添麻烦

您能发布一个重现问题的测试用例吗?11g中没有任何可能导致这种行为的变化。没关系,假警报。错误出现在本节之后调用的过程的第66行,但错误消息显示它来自触发器。哎哟