ORA-01403: no data found solution two
Solution 1: add an exception to handle the exception
Exception when no_data_found then
....
Solution 2: Change the select statement, for example:
Select count (*) field into var from table where ....
Add a count (*). Even if no data is found, 0 is returned instead of null.
Excuse me, an error is reported when you execute the following statement.
Declare
V_spec varchar2 (255 );
Begin
For r in (select subne. id, subne. subneassetid from subne where subne. subneassetid> 0)
Loop
Select subnetype. subnemodel into v_spec from subnetype, subne
Where subne. id = r. id and subne. subnetypeid = subnetype. id;
Update asset set specformula = v_spec where id = r. subneassetid and specformula is null;
End loop;
End;
ORA-01403: No data found
ORA-06512: In line 6
Add an independent block,
Begin
Select subnetype. subnemodel into v_spec from subnetype, subne
Where subne. id = r. id and subne. subnetypeid = subnetype. id;
Update asset set specformula = v_spec where id = r. subneassetid and specformula is null;
Exception
When no_data_found then
Null;
End;
In this way, the loop will not jump out in no_data_found!