View previous topic :: View next topic
|
Author |
Message |
jitu852
New User
Joined: 30 Apr 2007 Posts: 27 Location: Hyderabad
|
|
|
|
hi
when i use to delete a table with huge records it gives -904
since it has huge records; even though i empty it using where condition but it not efficient ....
so i want to know about any verb for delete table with huge record( i want to empty it only )
even i heard about TRANCATE
can any body haelp me on this (i meams its use and syntax) |
|
Back to top |
|
|
enrico-sorichetti
Superior Member
Joined: 14 Mar 2007 Posts: 10873 Location: italy
|
|
|
|
did You look at the -904 meaning...
emptying a huge table with huge columns by using a "delete * from table"
will be a silly waste of resources,
db2 will log all the activity for a ( useless ) restart
why not simply drop and create the table ???
if You insist on emptying it You must do it using a program and committing every few deletes
I' ll let You find the reasons by searching the forum for an explanation
( I checked and You can easily find it ) |
|
Back to top |
|
|
birdy K
New User
Joined: 05 Mar 2008 Posts: 72 Location: chennai
|
|
|
|
Hi jitu,
I think U have to give commit. For ex Give commit statement when count cross 1000 records. I thick It may solve your problem. I think I am right. |
|
Back to top |
|
|
am_ne
New User
Joined: 24 Mar 2007 Posts: 25 Location: Bangalore
|
|
|
|
Instead of deleting huge records you can opt for REORG utility with purge criteria. This will avoid unnecessary logging overhead.
If you are using "delete * " then it is better to use LOAD REPLACE with dummy file rather than using delete statements.
To be on the safer side take image copy before performing all the operations so that you can recover the database if anything goes wrong.
Thanks
Amit |
|
Back to top |
|
|
kishorekyn
New User
Joined: 20 Feb 2008 Posts: 5 Location: Chennai
|
|
|
|
Hi Enrico will this query not throw any negative sqlcode?? |
|
Back to top |
|
|
|