how can i eliminate chained rows [message #62497] |
Sat, 24 July 2004 00:30 |
JOHN
Messages: 182 Registered: April 1998
|
Senior Member |
|
|
hi guys ,
will any 1 tell me how to eliminate chained rows
ive used the head_rowid in the chained_rows table created by the script utlchain.sql
thanks in advance
|
|
|
Re: how can i eliminate chained rows [message #62505 is a reply to message #62497] |
Sun, 25 July 2004 21:13 |
Anu
Messages: 82 Registered: May 2000
|
Member |
|
|
Hi!
try the following:
1. copy the chained rows to to a temporary table
2. Delete the chained rows from the parent table
3. reinsert the rows into parent table from the temporary table.
as u said u have already chained rows table, do the following:
1. create table abc as select * from
parent_table where rowid in
(select head_rowid from chained_rows where table_name='parent_table' and owner_name='schema');
2. delete from parent_table where rowid in(
select head_rowid from chained_rows where table_name='parent_table' and owner_name='schema');
3. insert into parent_table select * from abc;
PS: abc- a temporary table
parent_table - Table that contains chained rows
hope this helps u
anu
|
|
|
Re: how can i eliminate chained rows [message #62620 is a reply to message #62497] |
Tue, 03 August 2004 21:28 |
Tom
Messages: 67 Registered: June 1998
|
Member |
|
|
A row Migrates when a block was found to have the space available for a row which underwent an update that increased its size over and beyond its block's available space.
A Chained row occurs when there is no block which can hold the row after it underwent an update which increased its size beyond the available free space in its hosting block. The solution is to split the row over several blocks.
Hope that helps,
clio_usa - OCP 8/8i/9i DBA
Oracle DBA Resources
Oracle DBA Forums
USENET Oracle Newsgroups
|
|
|