首页 > 代码库 > SQL查看数据库所用用户表数量和使用的空间
SQL查看数据库所用用户表数量和使用的空间
SQL Server数据库管理员通常硬盘空间奋斗,不断努力清理“表”,撰写许多查询,发现该表使用的硬盘空间。
本文介绍了如何查询系统表的空间使用情况,帮助数据库管理员识别正在使用最多的空间,以便存档旧数据和清除非必要的数据表。
1。登录到SQL Server实例的[SQL Server 2005或SQL Server的2008]。
2。浏览到你想获得空间信息数据库。
3。复制并粘贴到您的查询窗口的代码,并执行它。
4。检查的结果,并查看选定的数据库内的表空间
DECLARE @TABLENM SYSNAME, @CNT INT, @TOPN INTDECLARE TABLE_SPACE CURSOR FAST_FORWARD FOR SELECT NAME FROM SYSOBJECTS WHERE XTYPE = ‘U‘SELECT @CNT = 0, @TOPN = 0CREATE TABLE #TMPUSAGE ( NAME SYSNAME, ROWS INT, RESERVED VARCHAR(20), DATA VARCHAR(20), INDEX_SIZE VARCHAR(20), UNUSED VARCHAR(20) )OPEN TABLE_SPACEFETCH NEXT FROM TABLE_SPACE INTO @TABLENMWHILE @@FETCH_STATUS = 0 AND @CNT <= @TOPNBEGIN INSERT INTO #TMPUSAGE EXEC SP_SPACEUSED @TABLENM, ‘TRUE‘ IF @TOPN <> 0 SELECT @CNT = @CNT +1 FETCH NEXT FROM TABLE_SPACE INTO @TABLENM ENDCLOSE TABLE_SPACEDEALLOCATE TABLE_SPACESELECT *FROM #TMPUSAGE ORDER BY CONVERT(INT,LEFT(RESERVED, LEN(RESERVED)- 3)) DESCIF (SELECT OBJECT_ID(‘TEMPDB..#TMPUSAGE‘) ) IS NOT NULLDROP TABLE #TMPUSAGE
SQL查看数据库所用用户表数量和使用的空间
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。