當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
這樣就可以枚舉出每個表存儲空間的詳細使用情況!