Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> Re: snapshot too old

Re: snapshot too old

From: tojo <Tojo_at_hotmail.com>
Date: Thu, 26 Feb 2004 11:49:13 +0100
Message-ID: <MPG.1aa7ed95f9cb7b1f9896d7@news.t-online.de>


In article <meGdnelhrOYyK6DdRVn-hA_at_comcast.com>, support_at_dbainfopower.com says...
>
> Hello Shawn,
>
> Please check if below script helps:
>
> declare
> counter number := 0;
> cursor c1 is select /*+ parallel(y,2) full(y) */ rowid rid from
> test_table y;
> begin
> FOR c2 in c1 LOOP
>
> update test_table
> set SSN = TRANSLATE
> ('915482376','123456789',TRANSLATE(SSN,'1234567890','9732581406'))
> where rowid = c2.rid;
>
> counter := counter + 1;
>
> IF ( mod(counter,100) = 0)
> THEN
> COMMIT;
> END IF;
> END LOOP;
> COMMIT;
> END;
> /
>

Don't see how this will help. You're commiting every 100 rows, instead of the OP's 2500, which only *exacerbates* the problem. And what do the extra hints in the cursor's SELECT accomplish? The OP wasn't looking to optimize the select.

*sigh*

Received on Thu Feb 26 2004 - 04:49:13 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US