Tables spanning across multiple datafiles

>>Script Language and Platform: Oracle 8+
This script is useful for finding out how rows in a table are spread across different datafiles and how many rows are there in each datafile for that table.

Author: K.Chithra


ACCEPT OWNER CHAR PROMPT “ENTER OWNER NAME : ”
ACCEPT TABNAME CHAR PROMPT “ENTER TABLE NAME : ”
COL count Heading “Rows”
COL name HEADING “File Name ” for a60
set verify off

select name ,t.count from
v$datafile d,
(select count(*) count ,dbms_rowid.rowid_relative_fno(rowid) file#
from &&OWNER..&&TABNAME group by dbms_rowid.rowid_relative_fno(rowid)) t
where t.file#=d.file#
/
undefine OWNER
undefine TABNAME

****************
Ouput will be like :
File Name Rows
———————————————————— ———-
/ausdb/cre/ORACLE/dbase007/o_sem_01.dbf 15572
/ausdb/cre/ORACLE/dbase017/p_sem_02.dbf 1572
/ausdb/cre/ORACLE/dbase019/p_sem_03.dbf 10072



Disclaimer:
We hope that the information on these script pages is
valuable to you. Your use of the information contained in these pages,
however, is at your sole risk. All information on these pages is provided
“as -is”, without any warranty, whether express or implied, of its accuracy,
completeness, or fitness for a particular purpose…

Disclaimer Continued

Back to Database Journal Home

Latest Articles