zoukankan      html  css  js  c++  java
  • SQL Server:统计数据库中每张表的大小

    1. 统计数据库中每张表的大小

    1.1 首先执行下面的命令

    exec sp_MSforeachtable @command1="sp_spaceused '?'";
    

    1.2 检测当前数据库版本是否支持存储过程“sp_MSforeachtable”,如果执行成功则可以使用下面的命令

    create table tmp(
    	name varchar(50),
    	rows int,
    	reserved varchar(50),  
    	data varchar(50),
    	index_size varchar(50),
    	unused varchar(50)
    );
      
    insert into tmp (
    	name, rows, reserved, data, index_size, unused
    ) exec sp_MSforeachtable @command1="sp_spaceused '?'";
    
    select * from tmp where name <> 'tmp' order by data desc  ;
    
    drop table tmp ;
    
    • rows:行数
    • reserved:数据库为该表分配的空间
    • data:数据实际使用的空间,reserved肯定>=data
    • index_size:索引使用的空间
    • unused:为数据库中的对象保留但尚未使用的空间总量,大致等于reserved - data - index_size的值

    2. 统计数据库中每张表的行数

    select 表名=a.name, 记录数=b.rows 
    from sysobjects a, sysindexes b
    where a.name=b.name and a.type='u'
    ORDER BY b.rows desc
  • 相关阅读:
    校外实习-7.28
    校外实习-7.27
    校外实习-7.26
    校外实习-7.25
    校外实习-第三周总结
    校外实习-7.22
    校外实习-7.21
    校外实习-7.20
    作业九—总结
    结对编程项目---四则运算(截图总结篇)
  • 原文地址:https://www.cnblogs.com/rainman/p/3521652.html
Copyright © 2011-2022 走看看