如何检索数据库的已使用大小?

San*_*osh 1 c# database sql-server-express

在 C# 中检索 (sql) 数据库的已使用大小的最佳方法是什么?我有权访问数据库的连接字符串,并假设我也有数据库的 dbadmin 访问权限。

这个地方建议我使用 Microsoft.SqlServer.Smo.dll,但是我想知道是否可以使用 System.Data 本身中的 Sql* 命名空间来执行此操作?(如 SqlConnection、DbConnection 等)

Joh*_*don 5

sp_spaceused返回已分配和未使用的空间。( http://msdn.microsoft.com/en-us/library/ms188776.aspx ),从前者中减去后者以获得实际使用的空间。

EXEC sp_spaceused
Run Code Online (Sandbox Code Playgroud)

对于 sql server 变体。

只需创建一个 DbConnection 并执行此存储过程

如何查询sql server数据库大小