您的位置:首页 > 数据库

sqlserver sp_spaceused用法

2013-04-10 14:39 106 查看
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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐