当前位置: 首页 > 图文教程 > 数据库 > Oracle > DB中如何查询Table占用空间的大小

Oracle
解决Oracle 9i和Tomcat端口冲突
Oracle JOB的建立,定时执行任务
ORA-01562 和 ORA-01628 问题解决
oracle startup时 ORA-00600错误解决
解决Oracle处理中文乱码的一种方法
用Oracle10g列值掩码技术隐藏敏感数据
如何解决JOB的Interval输入参数过长
理解物化视图刷新过程中出现的约束冲突
Oracle数据库如何查询记录时给记录加锁
两种方法分析每月工作日计算程序
如何避免Oracle数据库密码出现@符号
在Oracle中使用登录触发器初始化用户会话
Oracle数据库中的数据出错的解决办法
Oracle11.2 命令行手工最简创建数据库的过程
Oracle 语句优化分析说明
ORACLE 常用函数总结(80个)
从Oracle 表格行列转置说起
EXECUTE IMMEDIATE用法小结
Oracle 创建用户及数据表的方法
oracle 在一个存储过程中调用另一个返回游标的存储过程

Oracle 中的 DB中如何查询Table占用空间的大小


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-30   浏览: 167 ::
收藏到网摘: n/a

  Oracle和DB2都支持分区表,但是我们得知道什么样的表适合使用分区表技术,Oracle的官方建议是超过2G的Table就要使用分区表。

  下面来总结一下,各DB中如何获得这些大小信息:

  Oracle 10G中:

  查询出当前用户的表所占用的空间大小,并按大小进行降序排列:

  Select Segment_Name,Sum(bytes)/1024/1024 From User_Extents Group By Segment_Name order by Sum(bytes)/1024/1024 desc

  查询出系统表空间的大小,并按大小进行降序排列(需要SYSDBA的权限):

  Select Tablespace_Name,Sum(bytes)/1024/1024 From Dba_Segments Group By Tablespace_Name order by Sum(bytes)/1024/1024 desc

  这个在OEMC中也可以看,但是如果没有装的话,SQL语句还是比较方便的。

  DB2中:

  查看某个Table的大小可以在控制中心中用图形界面查看。

  对应的SQL语句是什么?谁能告诉我一下?

  SQL Server中:

  执行统计并查看指定表名的表大小:

  exec sp_spaceused '表名', true;