1. to totally eliminate redo, load your staging records into a global temp table. it 
has absolutely no redo and is very fast. 

2. if your in 9i, use an external table and a merge command and update the table 
directly from the file. dont even load the records to a staging table. Do a search for 
this on asktom. He explains it in detail. 

3. This is the fastest update statement you can right...

UPDATE(select a.col1 a_col1, b.col1 b_col1
         from tab1 a, tab2 b
        where a.pk = b.pk)
set a_col1 = b_col1;

need primary keys on both tables or it wont work. This is hands down the fastest 
update you can do. 
> 
> From: "Rodrigues, Bryan" <[EMAIL PROTECTED]>
> Date: 2003/05/28 Wed AM 11:49:49 EDT
> To: Multiple recipients of list ORACLE-L <[EMAIL PROTECTED]>
> Subject: Which method is more efficient
> 
> Hello everyone,
> 
> I have a question for the group of which method is more efficient. 
> 
> To set the stage my company has a process to load part changes from vendors
> into the tables in an 8.1.7.4 Oracle database with archiving on and this
> database has a standby database at disaster recovery site, so nologging is
> not an option. 
> 
> There is a discussion going on as to which method is more effective for
> updating the information in a table. In looking at effectiveness, I am
> looking at reducing the amount of redo information produced and having the
> database do the least amount of work.
> 
> 1)    Method 1 is to update the information only for the fields that have
> changed, 1 field at a time.
> 2)    Method 2 is to update the information for all the fields in the
> record whether they have changed or not, 1 record at a time.
> 
> The size of the record is 1843 bytes and the distribution of field sizes:
>  2 fields varchar2(240).
>  1 field varchar2(150)
> 15 fields varchar2(50)
> 1 field varchar2(3)
> 2 fields varchar2(20)
> 4 fields varchar2(40)
> 3 fields varchar2(1)
> 2 fields varchar2(25)
> 2 fields number(10,2)
> 1 field number(13,2)
> 1 field number(1)
> 1 field number
> 1 field varchar2(6)
> 1 field number (17,2)
> 1 field varchar2(4)
> 3 fields that are date.
> 
> In the past couple of months the average number of fields changed per record
> was 3 to 4 fields per record.
> 
> Thanks for your help,
> 
> Bryan Rodrigues
> Oracle DBA
> Elcom, Inc.
> 
> 
> -- 
> Please see the official ORACLE-L FAQ: http://www.orafaq.net
> -- 
> Author: Rodrigues, Bryan
>   INET: [EMAIL PROTECTED]
> 
> Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
> San Diego, California        -- Mailing list and web hosting services
> ---------------------------------------------------------------------
> To REMOVE yourself from this mailing list, send an E-Mail message
> to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
> the message BODY, include a line containing: UNSUB ORACLE-L
> (or the name of mailing list you want to be removed from).  You may
> also send the HELP command for other information (like subscribing).
> 
> 

-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.net
-- 
Author: <[EMAIL PROTECTED]
  INET: [EMAIL PROTECTED]

Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
San Diego, California        -- Mailing list and web hosting services
---------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).

Reply via email to