我正在尝试获取 SQL Server(数据仓库)的 database_size 值
据我所知,我们有 sp_spaceused 可用于检查 database_size
但我找不到任何解决方案来帮助 grep database_size 值的数量
另一个解决方案是不使用 spaceused,但由于 Azure DWH 不允许 sys.master_file,其他解决方案也不起作用。
任何帮助将不胜感激!
我正在尝试获取 SQL Server(数据仓库)的 database_size 值
据我所知,我们有 sp_spaceused 可用于检查 database_size
但我找不到任何解决方案来帮助 grep database_size 值的数量
另一个解决方案是不使用 spaceused,但由于 Azure DWH 不允许 sys.master_file,其他解决方案也不起作用。
任何帮助将不胜感激!
尝试
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) );
当您运行查询时EXEC sp_helpdb
,您将获得整个数据库的大小。您也可以在这里传递任何特定的数据库名称。无论您当前在哪个数据库中。