用SQL统计SQLServe表存储空间大小的代码
更新时间:2012年05月28日 00:33:32 作者:
当SQLServer数据库越来越庞大,而其中的表有非常多的时候,想要知道到底是哪些表最耗存储空间,到底该怎样统计各个表的存储大小呢
其实SQLServer提供了一个sp_spaceused的系统存储过程可以实现该功能,下面就是调用的SQL:
create table #tb(表名 sysname,记录数 int
,保留空间 varchar(10),使用空间 varchar(10)
,索引使用空间 varchar(10),未用空间 varchar(10))
insert into #tb exec sp_MSForEachTable 'EXEC sp_spaceused ''?'''
select * from #tb
go
drop table #tb
这样就可以枚举出每个表存储空间的详细使用情况!
复制代码 代码如下:
create table #tb(表名 sysname,记录数 int
,保留空间 varchar(10),使用空间 varchar(10)
,索引使用空间 varchar(10),未用空间 varchar(10))
insert into #tb exec sp_MSForEachTable 'EXEC sp_spaceused ''?'''
select * from #tb
go
drop table #tb
这样就可以枚举出每个表存储空间的详细使用情况!
相关文章
如何在SQL Server 2014中用资源调控器压制你的存储?
本文通过一个非常简单的例子介绍了如何利用SQL Server 2014中的资源调控器(Resource Governor)来压制你的存储,需要的朋友可以参考下2015-07-07
将mater库中的系统存储过程批量生成*.sql文件 通用且非常实用
最近因为系统需要,需要将master库的所有和业务相关的存储过程批量生成 存储过程名.sql 文件,默认是不可以导出的2012-05-05


最新评论