0

我正在尝试获取 SQL Server(数据仓库)的 database_size 值

据我所知,我们有 sp_spaceused 可用于检查 database_size

但我找不到任何解决方案来帮助 grep database_size 值的数量

另一个解决方案是不使用 spaceused,但由于 Azure DWH 不允许 sys.master_file,其他解决方案也不起作用。

任何帮助将不胜感激!

4

3 回答 3

0

尝试

declare @dbsize as bigint
declare @logsize as bigint

select 
  @dbsize = sum(convert(bigint,case when status & 64 = 0 then size else 0 end))
, @logsize = sum(convert(bigint,case when status & 64 <> 0 then size else 0 end))
from dbo.sysfiles;

select dbSizeInMB = cast((@dbsize + @logsize)*8/1024.0  AS decimal(10,2) );
于 2019-01-24T09:17:35.353 回答
0

当您运行查询时EXEC sp_helpdb,您将获得整个数据库的大小。您也可以在这里传递任何特定的数据库名称。无论您当前在哪个数据库中。

于 2019-01-24T08:56:41.780 回答