Why it is giving this error eventhough I'm commiting frequently?
Because you HAVE the old snapshot - the cursor c1 that selects from table being updated.
what I've to modify in above procedure to run this update successfully?
Code:
loop
update ... where ... and rownum<=10000;
exit when sql%rowcount<10000;
commit;
end loop;
commit;
In the where clause you must put the condition to restrict the update to not yet updated rows.
Ales
The whole difference between a little boy and an adult man is the price of toys