Title: RE: CHAINED ROWS

If your chained rows are inside an Index-Organized table, be sure to read the Oracle manual on the "Analyze" command. There are two versions of the "chained-row" table, for index-organized tables you should create the "chained-row" table with universal rowids (head_rowid has datatype urowid). The "chained-row" table with universal rowids is the one named "...1.sql", i.e. has a 1 at the end of the file name.

-----Original Message-----
From: SARKAR, Samir [mailto:[EMAIL PROTECTED]]

If Oracle 8i is ur current version, run the utlchain1.sql script available in ur ORACLE_HOME/rdbms/admin
directory. This will create the chained_rows table for u.
Now analyze the affected table using the command :
 
analyze table <table_name> list chained rows into chained_rows;
 
Now when u select from the chained_rows table, u will get the rowid of all the rows that r chained in the table as
head_rowid.
 
The best way to deal with chained rows is to export the table's data, rebuild the table with a higher pctfree and
import the data back.
 
Otherwise, copy the chained rows into a temporary work table in the following way :
 
create table <temp_table_name> as
select * from <table_name> where rowid in
(select head_rowid from chained_rows where table_name = '<table_name>'
 and owner_name = '<owner_name>');
 
Then delete the chained rows from the main table in the following way :
 
 delete from <table_name>
 where rowid in
(select head_rowid from chained_rows where table_name = '<table_name>'
 and owner_name = '<owner_name>');
 
Next, re-insert the chained rows into the table :
 
insert into table_name
    select * from <temp_table_name>;
 
Commit ur work. Remember to disable any foreign key constraints during the deletion stage and re-enable them
again after re-insertion of the rows.
This should eliminate most of ur chained rows.

        
-----Original Message-----
From: Bunyamin K. Karadeniz [mailto:[EMAIL PROTECTED]]

I have seen that There are some number of  chained rows in several tables of a schema in my database .
What is it done in such a situation ?

Reply via email to