I have some procedure written in Oracle. Unfortunately, I can not show its code. Somewhere inside it is selected where the execution crashed due to lack of required data. Looks like this
select value into l_value from config where code = upper(p_code);
So, when I call this procedure as follows (in SqlDeveloper)
execute some_package.some_procedure('CODE');
he throws
Error report - ORA-01403: no data found ORA-06512: at "XXXXXXXXXXXXXXXXXXX", line 111 ORA-06512: at "XXXXXXXXXXXXXXXXXXX", line 111 ORA-06512: at line 1 01403. 00000 - "no data found" *Cause: No data was found from the objects. *Action: There was no data from the objects which may be due to end of fetch.
But when I call it that
call some_package.some_procedure('CODE');
it crashes in the same place (as I can assume from the result stored in the database), but it does not throw an exception.
some_package.some_procedure('CODE') succeeded.
What's happening? And why is there such a difference?
source share