oracle执行存储过程或触发器报错:01403. 00000 -“ no data found“

Posted 雅冰石

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle执行存储过程或触发器报错:01403. 00000 -“ no data found“相关的知识,希望对你有一定的参考价值。

1.问题原因:
存储过程中的,select a.xx(字段) into 变量名 from a(表名)where …。当语句中查询的数据为null时,返回的数据为空就会报错。
2.解决办法:
在对应语句结束;分号后面增加exception when data_no_found 进行异常捕捉处理。
例如:select a.xx into 变量名 from a where id =1;exception when data_no_found then DBMS_OUTPUT.PUT_LINE(‘不存在数据’); return;
————————————————
版权声明:本文为CSDN博主「good_good_xiu」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/good_good_xiu/article/details/115078737

以上是关于oracle执行存储过程或触发器报错:01403. 00000 -“ no data found“的主要内容,如果未能解决你的问题,请参考以下文章

Oracle PL/SQL - ORA-01403 使用“SELECT INTO”时“未找到数据”

ORA-01403: no data found

执行 C#的服务器端程序调用Oracle的存储过程报错

Oracle 学习之触发器

ORACLE的存储过程执行报错

ora-01403 no data found error,ora-04088 执行触发器时出错