zoukankan      html  css  js  c++  java
  • 如何获取SQL Server数据库里表的占用容量大小(转csdn)

    其实只要使用系统内置的存储过程sp_spaceused就可以得到表的相关信息

    如:sp_spaceused 'tablename'

    以下是为了方便写的一个存储过程,目的是把当前的所有表的相关信息全部都保存在一个指定的表里面

    CREATE PROCEDURE get_tableinfo AS

    if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[tablespaceinfo]'and OBJECTPROPERTY(id, N'IsUserTable'= 1)
    create table  tablespaceinfo                         --创建结果存储表
                  (nameinfo varchar(50) , 
                   rowsinfo 
    int , reserved varchar(20) , 
                   datainfo 
    varchar(20)  , 
                   index_size 
    varchar(20) , 
                   unused 
    varchar(20) )


    delete from tablespaceinfo --清空数据表

    declare @tablename varchar(255)  --表名称

    declare @cmdsql varchar(500)

    DECLARE Info_cursor CURSOR FOR 
    select o.name  
    from dbo.sysobjects o where OBJECTPROPERTY(o.id, N'IsTable'= 1 
         
    and o.name not like N'#%%'  order by o.name

    OPEN Info_cursor

    FETCH NEXT FROM Info_cursor 
    INTO @tablename 

    WHILE @@FETCH_STATUS = 0
    BEGIN

      
    if exists (select * from dbo.sysobjects where id = object_id(@tablenameand OBJECTPROPERTY(id, N'IsUserTable'= 1)
      
    execute sp_executesql 
             N
    'insert into tablespaceinfo  exec sp_spaceused @tbname',
              N
    '@tbname varchar(255)',
              
    @tbname = @tablename

      
    FETCH NEXT FROM Info_cursor 
      
    INTO @tablename 
    END

    CLOSE Info_cursor
    DEALLOCATE Info_cursor
    GO

    执行存储过程
    exec get_tableinfo

    查询运行该存储过程后得到的结果
    select *
    from tablespaceinfo 
    order by cast(left(ltrim(rtrim(reserved)) , len(ltrim(rtrim(reserved)))-2) as int) desc

  • 相关阅读:
    mysql存储过程之游标
    ip后面带端口号如何做域名解析
    将博客搬至CSDN
    java微信公众号JSAPI支付以及所遇到的坑
    button元素的id与onclick的函数名字相同 导致方法失效的问题
    在centOS使用systemctl配置启动多个tomcat
    mysql正则表达式,实现多个字段匹配多个like模糊查询
    web前端基础知识-(二)CSS基本操作
    web前端基础知识-(一)html基本操作
    python学习笔记-(十六)python操作mysql
  • 原文地址:https://www.cnblogs.com/runfeng/p/418436.html
Copyright © 2011-2022 走看看