1

我有一个 dbf 文件,例如:

undotbs01.dbf 10.16113281 GB
ENABLERS_DATA01.dbf 31.99998474 GB

如何找到哪些表与 dbf 文件关联,以便我可以从表中删除相应的数据以减少我的 dbf 文件磁盘消耗

4

1 回答 1

2

表不与 DBF 文件“关联”,它们与表空间相关联,而表空间又与一个或多个 DBF 文件相关联。

所以你需要将每个表的信息加入到表空间信息中,如下所示:

select tbl.owner, 
       tbl.table_name, 
       df.tablespace_name,
       df.file_name
from all_tables tbl
  join dba_data_files df on df.tablespace_name = tbl.tablespace_name
order by 1,2;

如果一个表空间有多个数据文件,您将在结果中多次看到该表(因为连接到dba_data_files)您无法分辨该表的数据实际位于哪个物理文件中。

于 2013-05-22T11:31:56.813 回答