调用存储过程出现ORA-01403: 未找到数据。高分求高手,急!!!!!

2025-02-22 12:20:49
推荐回答(3个)
回答1:

注意select into 语句,如果不是从dual中取值,那么最好加上异常捕获。
如:
BEGIN
select a.c_reportcode, c.c_unitid
into cnb_vvarB, cnb_nvarF
from tb_org_unitrelation a, TB_CNB_NDJXINFO b,tb_inf_employee c
where b.c_empoid=c.c_oid
and a.c_orgunitid = c.c_unitid
and b.c_oid = to_number(cnb_vvarA);
EXCEPTION
WHEN NO_DATA_FOUND THEN
cnb_vvarB := 0;
cnb_nvarF := 0;
END;

回答2:

请参照以下步骤:
1、根据PLSQL提示的错误行数定位到具体报错的那一行代码
2、查看该行代码是否有select .. into ...
3、修改程序兼容select 不到数据的情况,可以加max(),或者nvl(ksks,'默认值')之类的,这样就不会
报no data found exception了。

回答3:

提示哪行