[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