SQL Server查看所有表大小,所占空间
SQL Server查看所有表大小,所占空间
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
--主要原理:
exec sp_spaceused "表名" --取得表占用空間
exec sp_spaceused ""--數據庫所有空間
还有一个简单的办法
SELECT a.name, b.rows
FROM sysobjects AS a INNER JOIN
sysindexes AS b ON a.id = b.id
WHERE (a.type = "u") AND (b.indid IN (0, 1))
ORDER BY b.rows DESC转载于:http://www.cnblogs.com/nikyxxx/archive/2012/10/08/2715423.html
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: Fiddler界面详解
- 下一篇: 使用nginx与nginx-rtmp-module搭建流媒体服务器
