SQL Server 查看数据表占用空间大小的SQL语句

时间:2021-03-22 00:40:40
 1 declare @name varchar(1000)
 2 declare @sql varchar(1000)
 3 
 4 if object_id('tempdb..#space') is not null drop table #space
 5 create table #space(name varchar(50),rows bigint,reserved varchar(12),data varchar(12),index_size varchar(12),unused varchar(12))
 6 
 7 declare sp cursor local for select '['+name+']' from sysobjects where type = 'u'
 8 open sp
 9 fetch sp into @name
10 while @@fetch_status = 0
11 begin
12 set @sql = 'insert into #space exec sp_spaceused ' + @name
13 exec(@sql)
14 fetch sp into @name
15 end
16 close sp
17 
18 select * from #space order by cast(replace(reserved,'kb','')as int) desc

来自:SQL Server技术产品群(250942633)群友

本人独立博客:http://www.haoyuncn.net/sql-server-space