SQLServer查看所有表的行数和大小

SQLServer查看所有表的行数和大小:

--判断临时表是否存在,存在则删除重建

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(1000),

rowsNum varchar(1000),

reserved varchar(1000),

data varchar(1000),

index_size varchar(1000),

unused_size varchar(1000)

)

 

declare @name varchar(1000)

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 bigint) desc


请使用浏览器的分享功能分享到微信等