-
update large table
Hi friends,
I have a big table like 40 million rows....I want to update it as fast as I could
without using redologs (logging) or rollback or temp etc. Is this possible?
Does this command help?
update table EMP nologging parallel 8 set fullname=upper(trim(fullname));
thanks a lot
-
no you cannot do that hope you reliase how dangerous it is too even if you could
-
pls tell me dear why....
-
I suggest you to read oracle concepts manual
-
hi,
tri writing a procedure to do that.it realy decrease the time used to do an update on such a large table.
It realy works for me on a table with over 32 mil rows.
However , it will take a lot of time(and resource) if you use the 'clasy' way !
-
So, to summarize the thread,
Originally Posted by davey23uk
no you cannot do that hope you reliase how dangerous it is too even if you could
-
To TABREAZ,
You need to increase the INITRANS value for the index.
See below:
create index t1_idx on t1(object_name)
pctfree 30 initrans 9
tablespace large_01_idx nologging parallel 8
/
11:10:32 SQL> alter session enable parallel dml;
Session altered.
Elapsed: 00:00:00.00
11:10:40 SQL> alter session force parallel dml parallel 8 ;
Session altered.
Elapsed: 00:00:00.00
11:11:25 SQL> update /*+ full(t1) parallel(t1,8) */ t1
11:11:34 2 set object_name = lower(object_name);
1855968 rows updated.
Elapsed: 00:04:54.27
-
Thanks Tamil,
Its working fine now. Thanks a lot
-
Originally Posted by Bore
So, to summarize the thread,
So whats the danger plsssssssssssssss
Why is TAMIL doing it
-
why is a procedure quicker than a simple sql statement
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|