[SQL]統計資料庫檔案大小

[SQL]統計資料庫檔案大小

整理之前的資料


-- sp_MSforeachdb
-- http://www.dotblogs.com.tw/ricochen/archive/2012/01/19/66712.aspx
-- sp_spaceused
-- http://www.howtogeek.com/howto/database/determine-size-of-a-table-in-sql-server/
-- http://sqlserverplanet.com/dba/using-sp_spaceused
-- sp_helpdb
-- http://msdn.microsoft.com/zh-tw/library/ms178568.aspx
-- http://dba.stackexchange.com/questions/8332/print-database-size-from-sp-spaceused

-- 法一 : 使用 sp_spaceused
USE master
GO
-- 如果資料庫統計值差太多,請先執行更新使用率的DBCC指令
EXEC sp_MSforeachdb 'DBCC UPDATEUSAGE (?)'
EXEC sp_MSforeachdb 'USE ? EXEC sp_spaceused'
EXEC sp_MSforeachdb 'USE ? EXEC sp_updatestats'


-- 法二 : 使用 sp_helpdb
USE master
GO

DECLARE @DBINFO TABLE( 
    dbname sysname, 
    db_size varchar(20), 
    owner sysname null, 
    dbid int, 
    created datetime, 
    status varchar(1000), 
    compat int 
)


INSERT INTO @DBINFO
EXEC sp_helpdb


SELECT dbname,db_size
FROM
	@DBINFO
ORDER BY
	db_size DESC
GO