奇怪啊奇怪,为何我取得表占用的block数总是为0

WideWing 2004-12-03 09:56:45
我想计算一张表占用的实际物理存储空间,采用先分析,再查询占用block数乘以块大小的方法,语句如下:
分析表
analyze table tab_name compute statistics;
如果表太大就采用这个语句
analyze table tab_name estimate statistics;
查询数据大小:
select owner ,table_name,NUM_ROWS,BLOCKS*2048/1024/1024 "Size M",
  EMPTY_BLOCKS,
  LAST_ANALYZED
  from dba_tables
  where table_name= 'XXX';
但是查询得结果BLOCKS为0,所以占用空间也是0。
我也安装了oject browser,但是连接数据库时总是报Vendor:initialization failure.
这是为什么啊,有办法解决吗?肯请各位高手救我。
...全文
79 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
oracle888 2004-12-03
  • 打赏
  • 举报
回复
知道占用的大小就可以了,反正空的block别的object也不能使用。
fightintokyo 2004-12-03
  • 打赏
  • 举报
回复
你的object browse的版本是7吧。
你的话需要进行BDE的设定
DLL32   SQLORA8.DLL
VENDOR INT MTXOCI.DLL
hippie1024 2004-12-03
  • 打赏
  • 举报
回复
dba_extents,或dba_segment里面查
zmgowin 2004-12-03
  • 打赏
  • 举报
回复
select sum(bytes)/1024/1024 ||'MB' from dba_extents where ....
WideWing 2004-12-03
  • 打赏
  • 举报
回复
是啊,但如何才能知道占用的大小呢?

17,378

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧