您的位置:首页 > 数据库

SQL Server查看所有表大小,所占空间

2014-10-23 16:46 197 查看
--主要原理:

exec sp_spaceused '表名' --取得表占用空間

exec sp_spaceused ''--數據庫所有空間

create table #Data(name varchar(100),row varchar(100),reserved
varchar(100),data varchar(100),index_size varchar(100),unused
varchar(100))

declare @name varchar(100)

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 #data

exec sp_spaceused @name

print @name

fetch next from cur into @name

end

close cur

deallocate cur

create table #DataNew(name varchar(100),row int,reserved int,data int,index_size int,unused int)

insert into #dataNew

select name,convert(int,row) as
row,convert(int,replace(reserved,'KB','')) as
reserved,convert(int,replace(data,'KB','')) as data,

convert(int,replace(index_size,'KB','')) as index_size,convert(int,replace(unused,'KB','')) as unused from #data

select * from #dataNew order by data desc

http://www.2cto.com/database/201201/116774.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: