Originally posted by oracle_faq
Update never raises NO_DATA_FOUND

U have to do something like this.

begin
update;

if sql%notfound then
insert;
end if;
end;
I found the example somewhere started working with it. I just now did a test and came up with the same results.

Code:
LIDXPNN - t31a=> begin
  2  update a_table set pkey=666 where 1=2;
  3  end;
  4  /
PL/SQL procedure successfully completed.
However, the question really revolves around how to reraise an error. In any case I need to change my code.