当前位置:  数据库>sqlserver

参考sql2012存储过程写的统计所有用户表尺寸大小的示例

    来源: 互联网  发布时间:2014-10-13

    本文导语:  可以结合sp_MSforeachdb再遍历所有用户数据库查看所有表的尺寸大小,注意它的参数@sql不能超过nvarchar(2000),这里就不贴出代码了。另外还可以定期运行并将结果保存下来,以便观察数据变化趋势。 查询单个数据库的所有用户表...

可以结合sp_MSforeachdb再遍历所有用户数据库查看所有表的尺寸大小,注意它的参数@sql不能超过nvarchar(2000),这里就不贴出代码了。
另外还可以定期运行并将结果保存下来,以便观察数据变化趋势。

查询单个数据库的所有用户表尺寸大小:

代码如下:

Select @@servername as ServerName,db_name() as DBName ,object_id as ObjectID, schema_name(schema_id) as SchName, name as TableName
    ,Rowcnt as Rows,Columns,Indexes,RowLength
    ,ReservedKb, TableUsedKb
    ,UsedKb-TableUsedKb as IndexUsedKb,ReservedKb-UsedKb as UnusedKb
    ,create_date as CreateDate,modify_date as LastModifiedDate, getutcdate() as TrackingUTCTime
From
(select
    object_id
    ,schema_id
    ,name
    ,(Select max(row_count) from sys.dm_db_partition_stats p with(nolock) where p.object_id=t.object_id and p.index_id < 2)  as Rowcnt
    ,(Select Count(1) from dbo.syscolumns with(nolock) where id = t.object_id) as Columns
    ,(Select Count(distinct index_id) from sys.dm_db_partition_stats p with(nolock) where p.object_id=t.object_id) as Indexes
    ,(SELECT SUM(length) FROM dbo.syscolumns with(nolock) WHERE id = t.object_id) as RowLength
    ,IsNull((Select SUM(reserved_page_count) from sys.dm_db_partition_stats p with(nolock) where p.object_id=t.object_id),0)*8
        + IsNull((Select sum(reserved_page_count)
                FROM sys.dm_db_partition_stats p2 with(nolock)
                inner join sys.internal_tables it with(nolock) on p2.object_id = it.object_id
                WHERE it.parent_id = t.object_id
                        AND it.internal_type IN (202,204,207,211,212,213,214,215,216,221,222,236)),0)* 8 as ReservedKb
    ,IsNull((Select SUM(in_row_data_page_count + lob_used_page_count + row_overflow_used_page_count)
                 from sys.dm_db_partition_stats p with(nolock) where p.object_id=t.object_id and p.index_id < 2),0)* 8 as TableUsedKb
    ,IsNull((Select SUM(used_page_count) from sys.dm_db_partition_stats p with(nolock) where p.object_id=t.object_id),0)*8
        + IsNull((Select sum(used_page_count)
                FROM sys.dm_db_partition_stats p2 with(nolock)
                inner join sys.internal_tables it with(nolock) on p2.object_id = it.object_id
                WHERE it.parent_id = t.object_id
                        AND it.internal_type IN (202,204,207,211,212,213,214,215,216,221,222,236)),0)* 8 as UsedKb
    ,create_date
    ,modify_date
from sys.tables t with(nolock)
where Type='U'
) A
order by ReservedKb desc

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间javax.xml.stream类xmleventfactory成员方法: createstartdocument定义参考
  • 操作系统 iis7站长之家
  • java命名空间javax.xml.stream类xmleventfactory成员方法: createenddocument定义参考
  • 关于考认证,请各位帮小弟参考参考
  • java命名空间javax.xml.stream接口xmleventwriter成员方法: close定义参考
  • 小弟的专业方向!请大家参考参考!给点意见。。谢谢!
  • java命名空间javax.xml.stream类xmlinputfactory成员方法: reporter定义参考
  • 请问是谁想要参考数据输入输出流的流量监控?这儿有一个简易的例子供参考
  • java命名空间javax.xml.stream类xmlinputfactory成员方法: resolver定义参考
  • 请推荐scjp参考书。
  • java命名空间javax.xml.transform类transformerconfigurationexception成员方法: transformerconfigurationexception定义参考
  • 作linux开发,平常需要准备那些参考资料?
  • java命名空间javax.xml.datatype类datatypeconstants成员方法: gmonthday定义参考
  • 书目参考信息检索软件 JReferences
  • java命名空间javax.xml.namespace类qname成员方法: getlocalpart定义参考
  • 《Linux内核情景分析》值得推荐的内核学习参考两用资料
  • java命名空间javax.xml.parsers类documentbuilder成员方法: isvalidating定义参考
  • H.264/AVC标准参考软件 JM
  • java命名空间javax.xml.parsers类documentbuilder成员方法: getdomimplementation定义参考
  • H.264 SVC 的参考实现 JSVM
  • java命名空间javax.xml.soap类attachmentpart成员方法: removemimeheader定义参考
  • html参考书


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3