微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

sqlserver sp_spaceused用法

sp_spaceused
显示行数、保留的磁盘空间以及当前数据库中的表所使用的磁盘空间,或显示由整个数据库保留和使用的磁盘空间。

语法
sp_spaceused [[@objname =] 'objname']
    [,[@updateusage =] 'updateusage']

参数
[@objname =] 'objname'

是为其请求空间使用信息(保留和已分配的空间)的表名。objname 的数据类型是 nvarchar(776),认设置为 NULL。

[@updateusage =] 'updateusage'

表示应在数据库内(未指定 objname 时)还是在特定的对象上(指定 objname 时)运行 DBCC UPDATEUSAGE。值可以是 true 或 false。updateusage 的数据类型是 varchar(5),认设置为 FALSE。

返回代码
0(成功)或 1(失败)

示例
A. 有关表的空间信息
下例报告为 titles 表分配(保留)的空间量、数据使用的空间量、索引使用的空间量以及由数据库对象保留的未用空间量。

USE xxx
EXEC sp_spaceused xxx

B. 有关整个数据库的已更新空间信息
下例概括当前数据库使用的空间并使用可选参数 @updateusage。

USE xxx
sp_spaceused @updateusage = 'TRUE'

一次性查看某数据库的所有表大小: create table test( name varchar(50),rows int,reserved varchar(20),data varchar(20),index_size varchar(20),unused varchar(20) )   insert into test exec sp_MSforeachtable "exec sp_spaceused '?'" select * from  test   order by cast(replace(reserved,'KB','') as int) desc

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐