风言枫语  

如何计算Oracle的表一条记录占用空间的大小
如何计算Oracle的表记录占用空间的大小
是把所有字段的大小都加起来吗?varchar(256),char,number算几个字节?

------解决方案--------------------
第一行的列头信息所占字节数,再加上各个字段所占的字节数据,加起来是多少就是多少
列头信息记录每个字段的数据类型

------解决方案--------------------
1,你可以对表进行分析,然后在user_tables中可以看到平均的行长度(每条记录长度都不同);
2,你可以将表的某个数据库转储出去,自己看一下好了^_^。 
------解决方案--------------------
有各种比较复杂的情况,计算data block是比较可靠的.

刷新一下统计信息,然后统计某个统计表即可。

select table_name,blocks*8192/1024/1024 size_m from user_tables

 

posted on 2013-11-14 21:14  风言枫语  阅读(1258)  评论(0编辑  收藏  举报