当前位置: 移动技术网 > IT编程>数据库>MSSQL > 求知当前数据库的空间使用大小

求知当前数据库的空间使用大小

2019年05月15日  | 移动技术网IT编程  | 我要评论

苏教版,深山老林里传来惨叫 女子走近后泪奔,我的黑帮女友电影

欲知道当前数据库空间使用大小,可以从下面这个系统表sys.database_files 得到。

 

set ansi_nulls on
go
set quoted_identifier on
go

-- =============================================
-- author:      insus.net
-- create date: 2019-05-14
-- update date: 2019-05-14
-- description: 数据库空间使用
-- =============================================
create function [dbo].[svf_db_spaceused]()
returns @db table([name] sysname,[physical_name] sysname,[type_desc] sysname,[size(byte)] bigint)
as
begin   
    insert into @db ([name],[physical_name],[type_desc],[size(byte)]) 
    select [name],[physical_name],[type_desc],sum(cast(fileproperty(name, 'spaceused') as bigint) * 8192.)  
    from sys.database_files    
    group by [name],[physical_name],[type_desc]
    return
end

go

 

运行函数:

 

以上算出大小单位为byte,如果你需要mb或gb作为单位呢?

mb:

sum(cast(fileproperty(name, 'spaceused') as bigint) * 8192.)/1024/1024

gb:

sum(cast(fileproperty(name, 'spaceused') as bigint) * 8192.)/1024/1024/1024


当然还可以算出其它相关单位的值。

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网