SQL Server - 空き容量を確認する

データーベースファイルと物理ディスクの空き容量を確認するSQLです。

空き容量を確認する方法

SQL Server Management Studio などで次のSQLを実行します。
SELECT
	 [論理名]
	,[物理ファイル名]
	,[ファイルサイズ(MB)]
	,[最大ファイルサイズ(MB)]
	,[使用量(MB)]
	,[最大ファイルサイズ(MB)] - [使用量(MB)] AS [残容量(MB)]
	,[使用量(MB)] / [最大ファイルサイズ(MB)] * 100 AS [使用率(%)]
	FROM
	(
		SELECT
			 [name] AS [論理名]
			,[filename] AS [物理ファイル名]
			,([size] * 8.0) / 1024.0 AS [ファイルサイズ(MB)]
			,(CASE [maxsize]
				WHEN 0  THEN ([size] * 8.0) / 1024.0
				WHEN -1 THEN NULL
				ELSE ([maxsize] * 8.0) / 1024.0
			  END) AS [最大ファイルサイズ(MB)]
			,(FILEPROPERTY(FILE_NAME(fileid),'SpaceUsed') * 8.0) / 1024.0 AS [使用量(MB)]
		FROM [dbo].[sysfiles]
	) T;
データーベースファイルの空き容量確認
データーベースファイルの空き容量確認
最大ファイルサイズ・残容量・使用率の欄が NULL になっている場合、物理ディスクが一杯になるまでサイズが拡張されます。 次のSQL を実行すると 物理ディスクの空き容量が確認できます。
EXEC master..xp_fixeddrives;
物理ディスクの空き容量確認
物理ディスクの空き容量確認

検証環境