Oracle FAQ Your Portal to the Oracle Knowledge Grid

Home -> Community -> Mailing Lists -> Oracle-L -> RE: for d in c loop; insert; commit ...

RE: for d in c loop; insert; commit ...

From: Kerber, Andrew W. <>
Date: Thu, 16 Aug 2007 07:38:07 -0500
Message-ID: <>

I suppose its possible there were other issues. Maybe the some part of the system was unstable and they didn't want to lose a lot of data in case it failed? Or the data wasn't very clean, and they didn't want to have to start over if they had one bad piece of data they had to manually fix out of several thousand?

-----Original Message-----
[] On Behalf Of
Sent: Thursday, August 16, 2007 7:16 AM
To:; Subject: RE: for d in c loop; insert; commit ...

I think that 'back then' the developers where trying to avoid the snapshot to old error... even if it had to begin over, some of it would be committed already.... (I'm just the messenger).

When inserting... it appears that 'old' habit has infiltrated every peace of code... perhaps to the point where they forgot why they did the committing in the first place, inside a loop.... let alone use the mod function, so now all DML commits every 50 rows... (only 50 rows? Wholly mollie).

Joel Patterson
Database Administrator
904 727-2546

-----Original Message-----
[] On Behalf Of stv Sent: Wednesday, August 15, 2007 7:01 PM To:
Subject: Re: for d in c loop; insert; commit ...

Ooops. Forgot to mention this is an old database (probably started with version 6) with some major work done when they moved to 8i on Solaris. Currently running on Linux x86_64. Perhaps this made sense in an older version?

On 8/15/07, stv <> wrote:
> Why in the world did I inherit a database with all this nonsense
everywhere ...
> lc := 0;
> For d in C loop
> lc := lc + 1;
> # insert stuff
> if mod(lc, 50) = 0 then commit; end if;
> end loop;
> commit;



NOTICE:  This electronic mail message and any attached files are confidential.  The information is exclusively for the use of the individual or entity intended as the recipient.  If you are not the intended recipient, any use, copying, printing, reviewing, retention, disclosure, distribution or forwarding of the message or any attached file is not authorized and is strictly prohibited.  If you have received this electronic mail message in error, please advise the sender by reply electronic mail immediately and permanently delete the original transmission, any attachments and any copies of this message from your computer system. Thank you.


Received on Thu Aug 16 2007 - 07:38:07 CDT

Original text of this message