如何查看oracle 数据库中表的大小

好比有一张user(用户表),我想统计张表的数据信息的大小,请各位高手啊指点... 好比有一张user(用户表),我想统计张表的数据信息的大小,请各位高手啊指点 展开
 我来答
znd0913
2012-11-03
知道答主
回答量:17
采纳率:0%
帮助的人:1.9万
展开全部
select segment_name,segment_type,bytes/1024 from user_segments;
通关过segment,也可以查到你表的具体大小,上面精确到了字节单位,如果想变成M,则后面bytes/1024/1024即可。
ba5ham
2010-06-01 · TA获得超过8834个赞
知道大有可为答主
回答量:2673
采纳率:0%
帮助的人:2507万
展开全部
数据字典 user_tables 数字字典中包含了你所需要的信息,比如表中存储的记录数 NUM_OWS,所占用的数据块数BLOCKS等。 但需要对你要关注的那张表进行统计分析user_tables 数据字典中的这些数据才是准确的, 对表进行分析的方法:

在 sqlpluse 中执行:
analyze table table_name compute statistics;

或者执行 oracle 系统包:
exec DBMS_STATS.GATHER_TABLE_STATS(.....);
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
198901245631
推荐于2017-09-07 · TA获得超过3.5万个赞
知道大有可为答主
回答量:9037
采纳率:92%
帮助的人:1676万
展开全部
每张表都是作为“段”来存储的,可以通过user_segments视图查看其相应信息。
段(segments)的定义:如果创建一个堆组织表,则该表就是一个段。
sql:SELECT segment_name AS TABLENAME,BYTES||'B' FROM user_segments WHERE segment_name='表名'。
解释:
segment_name 就是要查询的表名(大写),BYTES 为表存储所占用的字节数。本sql的意思就是查询出表名和表所占的存储空间大小。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
caiqiupeng
2010-05-31 · TA获得超过5694个赞
知道大有可为答主
回答量:2979
采纳率:33%
帮助的人:810万
展开全部
关注。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式