首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

sqlserver中怎么查询某几个表目前的空间大小

2012-02-12 
sqlserver中如何查询某几个表目前的空间大小找了半天的资料,将mysql的实现了SQL codeSELECT sum(DATA_LENG

sqlserver中如何查询某几个表目前的空间大小
找了半天的资料,将mysql的实现了

SQL code
SELECT sum(DATA_LENGTH) as RESERVED FROM information_schema.`TABLES` where TABLE_SCHEMA='database1' and TABLE_NAME = 'datatable1'

但是sqlserver的一直不知道怎么实现,使用
SQL code
exec sp_spaceused datatable1,true

只能查询一张表,如果使用
SQL code
exec sp_spaceused
,得到的结果是分开的。
我想实现的类似下面

得到的某几张表的大小


[解决办法]
SQL code
sp_spaceused  '表名'
[解决办法]
sp_spaceused tb
[解决办法]
写个存贮过程吧
[解决办法]
SQL code
1.use master select * from dbo.sysdatabases 2. 以SQL2000自带PUBS为例exec sp_MSForEachTable @precommand=N'create table ##(表名 sysname,记录数 int,保留空间 Nvarchar(10),使用空间 varchar(10),索引使用空间 varchar(10),未用空间 varchar(10))',@command1=N'insert ## exec sp_spaceused ''?''',@postcommand=N'select * from ## order by 记录数 '
[解决办法]
SQL code
--统计数据库里每个表的详细情况exec sp_MSforeachtable @command1="sp_spaceused '?'" 

热点排行