David, You don't yet know why it's slow.
Why not turn tracing on for the session doing the inserts and then run tkprof on the trace file? Since the inserts seem to be taking so long, you should also be able to join v$session_wait with v$session to catch the waits in action and determine exactly what they are. You should also join v$session and v$session_event while the insert job is running. Actually, using bind variables will probably help. The insert statements will be less resource intensive and run much faster, and this will result in less contention for other sessions. My tests of insert statements with and without bind variables show that using bind variables resulted in an insert job of 27k rows running in 15 seconds and < 1/100 sec of parse time. Not using bind variables required 60 seconds, 20 of which were CPU parse time. The increased run time also resulted in 3x as many buffer busy waits for other sessions trying to hit the same table. HTH Jared "Nguyen, David M" <[EMAIL PROTECTED]> Sent by: [EMAIL PROTECTED] 08/13/2002 01:34 PM Please respond to ORACLE-L To: Multiple recipients of list ORACLE-L <[EMAIL PROTECTED]> cc: Subject: RE: It took more than an hour to update 10,000 records Is there a parameter that I can tune in init.ora file to improve this process? Thanks, David -----Original Message----- Sent: Tuesday, August 13, 2002 2:00 PM To: Multiple recipients of list ORACLE-L Bind variables will not buy you anything. The time taken is mainly dependent on the execution plan and the cardinality of the indexes being used. Also any overhead like updating a column that's part of an index, triggers, referential constraints, etc. Waleed -----Original Message----- Sent: Tuesday, August 13, 2002 2:35 PM To: Multiple recipients of list ORACLE-L I run it on the server. How do I use bind variables? Thanks, David -----Original Message----- Sent: Tuesday, August 13, 2002 1:13 PM To: Multiple recipients of list ORACLE-L >From the look of your sql statements it seems that each statement will be hard parsed because the values are different. If you will use bind variables you can save a lot of time. Is the script runs on the server or from another computer? If you run the script from another computer you also have the network time added. Yechiel Adar Mehish ----- Original Message ----- To: Multiple recipients of list ORACLE-L <[EMAIL PROTECTED]> Sent: Tuesday, August 13, 2002 6:24 PM > Hi all, > > I write a script to update 10,000 records in my database and noticed it took > more than an hour to update 10,000 records. The script just includes 10,000 > SQL update commands as shown below. Is the time too long to update 10,000 > records? Is it a way to improve the update task to run faster. Please > advise. > > *** A portion of my update script is shown below: > > update dbimpl.npa_nxx set ported_flag = 1 where nxx_id = 206 and npa_id = > 201 and lata_id = 224; > > update dbimpl.npa_nxx set ported_flag = 1 where nxx_id = 207 and npa_id = > 201 and lata_id = 224; > > > Thanks, > David > -- > Please see the official ORACLE-L FAQ: http://www.orafaq.com > -- > Author: Nguyen, David M > INET: [EMAIL PROTECTED] > > Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 > San Diego, California -- Public Internet access / Mailing Lists > -------------------------------------------------------------------- > 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.com -- Author: Yechiel Adar INET: [EMAIL PROTECTED] Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- 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.com -- Author: Nguyen, David M INET: [EMAIL PROTECTED] Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- 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.com -- Author: Khedr, Waleed INET: [EMAIL PROTECTED] Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- 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.com -- Author: Nguyen, David M INET: [EMAIL PROTECTED] Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- 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.com -- Author: INET: [EMAIL PROTECTED] Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- 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).