这几天要求作一个服务器的统计信息,主要针对表和索引。下面我就简单分享几个查询数据表和索引统计信息的方法:数据库
1.使用T-SQL 语句实现:服务器
select schema_name(t.schema_id) AS '架构', t.name AS '表名称', i.rows AS '行数', 8 * reserved AS '保留空间(KB)', 8 * dpages AS '已使用的(KB)', 8 * ( reserved - dpages )AS '未使用的(KB)' from sys.tables as t, sysindexes as i where t.object_id = i.id and i.indid <=1 --可选择不一样的表单独查询 AND t.name='CTTextData'
执行结果如图架构
这种方法的优势以下:布局
2. 使用系统存储过程sp_spaceused性能
exec sp_spaceused 'CTApplication' --取得表占用空間
执行结果以下:spa
注意当不加入表名称参数的时候结果为该上下文(USE xxx--库名称)数据库实例的全部表综合信息。设计
可使用Sp_msforeachtable遍历全部当前上下文的表3d
以下:code
须要注意的是当使用sp_spaceused时,若是架构为dbo,则能够不输入架构,不然必须输入本身的架构名称。blog
3.使用系统报表
使用流程如图,右键数据库实例,而后依次点击 reports \ standard reports \ Disk Usage by Top Tables:
最终显示:
图中展现了所须要的一些信息,其中每一个信息均可以按照正序和倒叙排序,单位是KB。
同时右键这个窗口内,有修改页面布局、导出(Excel\Word\PDF)、打印等功能。
这种方式有以下优势:
总结:
本文简单介绍了几种查询数据库表的磁盘和索引的统计状况。在平时的工做中会常常用到这个功能,由于要看一下查询表的压力,索引占比,已经各个表的使用空间状况,对于表的设计,索引的使用等都有很大帮助。但愿对你们有所帮助。