zoukankan      html  css  js  c++  java
  • SQLServer中系统存储过程sp_spaceused SQL Server查看所有表大小、表行数和占用空间信息

    SQLServer中系统存储过程sp_spaceused

     

    sp_spaceused

    执行sp_spaceused存储过程的时候可以不用带参数,直接执行,或者exec sp_spaceused都可以,返回两个结果集:

    列名数据类型描述
    database_name varchar(18) 当前数据库的名称。
    database_size varchar(18) 当前数据库的大小。
    unallocated space varchar(18) 数据库的未分配空间。

     

     

    列名数据类型描述
    reserved varchar(18) 保留的空间总量。
    Data varchar(18) 数据使用的空间总量。
    index_size varchar(18) 索引使用的空间。
    Unused varchar(18) 未用的空间量。

     有关表的空间信息

    下例报告为 aa 表分配(保留)的空间量、数据使用的空间量、索引使用的空间量以及由数据库对象保留的未用空间量。

    USE Test3
    EXEC sp_spaceused 'aa'

    SQL Server查看所有表大小、表行数和占用空间信息

    一、查看表名和对应的数据行数

    select  a.name as '表名',b.rows as '表数据行数'
    from sysobjects a inner join sysindexes b
    on a.id = b.id
    where   a.type = 'u'
    and b.indid in (0,1)
    --and a.name not like 't%'
    order by b.rows desc


    二、查看表名和表占用空间信息
    --判断临时表是否存在,存在则删除重建
    if exists(select 1 from tempdb..sysobjects where id=object_id('tempdb..#tabName') and xtype='u')
    drop table #tabName
    go
    create table #tabName(
    tabname varchar(100),
    rowsNum varchar(100),
    reserved varchar(100),
    data varchar(100),
    index_size varchar(100),
    unused_size varchar(100)
    )
     
    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 #tabName
        exec sp_spaceused @name
        --print @name
     
        fetch next from cur into @name
    end
    close cur
    deallocate cur

    select tabname as '表名',rowsNum as '表数据行数',reserved as '保留大小',data as '数据大小',index_size as '索引大小',unused_size as '未使用大小'
    from #tabName
    --where tabName not like 't%'
    order by cast(rowsNum as int) desc


    --系统存储过程说明:

    --sp_spaceused 该存储过程在系统数据库master下。
    exec sp_spaceused '表名' --该表占用空间信息
    exec sp_spaceused           --当前数据库占用空间信息

  • 相关阅读:
    电话聊天狂人
    PAT 1080. MOOC期终成绩
    PAT 1079. 延迟的回文数
    [转载]matlab 中序列求极值的方法
    [转载][转]Matlab-寻找峰值函数
    [转载]Kirchhoff Migration Impulse Response
    Envelope Extraction Using the Analytic Signal
    [转载]地震动的挑选
    C笔记
    Git常用有用命令
  • 原文地址:https://www.cnblogs.com/yclizq/p/12838816.html
Copyright © 2011-2022 走看看