发布网友
共1个回答
热心网友
只需查看数据文件中是否包含extent段。如果有extent(索引段,数据段)段,则说明数据文件中有数据。
使用dba_extents视图和dba_data_files视图进行连接查询。
select
t.file_name,t1.owner,t1.segment_name,t1.segment_type,t1.tablespace_name
from
dba_data_files
t,dba_extents
t1
where
t.file_id=t1.file_id
and
file_name='你要查询的数据文件路径';
t.file_name:数据文件名
t1.owner:拥有对象的用户名
t1.segment_name:数据文件包含的对象
t1.segment_type:对象的类型
t1.tablespace_name:数据文件对应的表空间
例子:
select
t.file_name,t1.owner,t1.segment_name,t1.segment_type,t1.tablespace_name
from
dba_data_files
t,dba_extents
t1
where
t.file_id=t1.file_id
and
file_name='e:\oradata\test\users01.dbf';
视图dba_extents数据量比较大,查询起来比较慢。得多等一会儿