查數據庫大小及表大小

--查數據庫大小

EXEC sp_spaceused

 

--查數據庫中各表的大小

---數據庫各表大小
 SET NOCOUNT ON
 DECLARE @tablename VARCHAR(255)
 DECLARE table_list_cursor CURSOR
 FOR
    SELECT  name
    FROM    sys.tables
    ORDER BY name
    --打開遊標
 OPEN table_list_cursor
    --讀取第一條數據
 FETCH NEXT FROM table_list_cursor INTO @tablename
 
 SELECT CONVERT(NVARCHAR(255), '') AS 表名 ,
        1 AS 行數 ,
        CONVERT(NVARCHAR(255), '') AS 預留空間KB ,
        CONVERT(NVARCHAR(255), '') AS 數據佔用空間KB ,
        CONVERT(NVARCHAR(255), '') AS 索引佔用空間KB ,
        CONVERT(NVARCHAR(255), '') AS 剩餘空間KB
 INTO   #temp  
 
 
    --遍歷查詢到的表名
 WHILE @@FETCH_STATUS = 0
    BEGIN
 
        INSERT  INTO #temp
                EXEC sp_spaceused @tablename
        FETCH NEXT FROM table_list_cursor INTO @tablename
    END
 
    --釋放遊標
 CLOSE table_list_cursor
 DEALLOCATE table_list_cursor


 SELECT * FROM   #temp order by data desc;
 DROP TABLE #temp;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章