首页 > 代码库 > 查看表用量
查看表用量
通过游标和SP_SPACEUSED来查看当前库所有表数据行、已分配空间总量、数据使用总量、索引使用总量、已分配但未使用总量
1 if OBJECT_ID (‘tempdb..#temp‘) is not null 2 drop table #temp 3 go 4 CREATE TABLE #temp 5 ( 6 name VARCHAR (100), 7 rows INT , 8 reserved varchar (20), 9 data varchar (20),10 index_size varchar (20),11 unused varchar (20),12 time datetime default getdate()13 14 )15 DECLARE @tablename VARCHAR( 100)16 DECLARE @sql VARCHAR( 500)17 DECLARE @str VARCHAR( 100)18 DECLARE tablecursor CURSOR19 FOR20 SELECT name21 FROM sys.tables22 WHERE type_desc = ‘USER_TABLE‘23 OPEN tablecursor24 FETCH NEXT FROM tablecursor INTO @tablename25 WHILE @@fetch_status = 026 BEGIN27 SET @str = @tablename28 SET @sql = ‘insert into #temp(name,rows,reserved,data,index_size,unused) EXEC sp_spaceused [‘ + @tablename + ‘]‘29 EXEC(@sql )30 FETCH NEXT FROM tablecursor INTO @tablename31 END32 CLOSE tablecursor33 DEALLOCATE tablecursor34 35 36 SELECT * FROM #temp 37 where rows <> 038 order by [rows] desc39 40
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。