zoukankan      html  css  js  c++  java
  • SQL Server中如何统计数据库中所有用户表所占空间大小?

    脚本:

    create table #Data(name varchar(100),row varchar(100),reserved varchar(100),data varchar(100),

    index_size varchar(100),unused varchar(100)); create table #DataNew(name varchar(100),row int,reserved int,data int,index_size int,unused int)

    declare @name varchar(100);

    declare cur cursor  for     

    select name from sysobjects where xtype='u' order by name

    open cur

    fetch next from cur into @name

    while @@fetch_status=0

    begin     

      insert into #data      exec sp_spaceused @name      

      fetch next from cur into @name

    end

    close cur

    deallocate cur

      insert into #dataNew select name,convert(int,row) as row,convert(int,replace(reserved,'KB','')) as reserved,convert(int,replace(data,'KB','')) as data,

      convert(int,replace(index_size,'KB','')) as index_size,convert(int,replace(unused,'KB','')) as unused from #data ;

      select * from #dataNew order by data desc;

    drop table  #Data;

    drop table  #DataNew;


    结果列说明:

    name:表名

    row : 表中数据的总行数

    reserved:为表保留的空间总量

    data:表中的数据所使用的空间总量

    index_size:中的索引所使用的空间总量

    unused:为表保留但尚未使用的空间总量

  • 相关阅读:
    Linux系统挂载点与分区的关系(转载)
    读书笔记深入linux内核架构Chapter 2 part2
    读书笔记深入linux内核架构Chapter 2 part1
    读书笔记深入linux内核架构Chapter9
    读书笔记深入linux内核架构Chapter8part2
    鞋匠的烦恼
    和最大的连续子数组
    wxLog 的使用
    suffix trie
    trie
  • 原文地址:https://www.cnblogs.com/ylh1223/p/2577792.html
Copyright © 2011-2022 走看看