问题是这样的:如果一个数据库备份文件有800M!库中的表有60多个...
我想知道大概每个表在 800M多 的备份文件中所占空间的大小???这样想当然不是很确切,但是我现在碰到的问题 就是 想了解 到底因为哪些表的存在导致了 备份文件偏大。只要有个大概可参考的数据就OK了。该怎么办呢?
我想知道大概每个表在 800M多 的备份文件中所占空间的大小???这样想当然不是很确切,但是我现在碰到的问题 就是 想了解 到底因为哪些表的存在导致了 备份文件偏大。只要有个大概可参考的数据就OK了。该怎么办呢?
create table #
(
表名 varchar(50),
行数 int,
保留空间 varchar(20),
数据使用空间 varchar(20),
索引使用空间 varchar(20),
未使用空间 varchar(20)
)declare @name varchar(50)
set @name=''declare cur_1 cursor for
select [name] from sysobjects where xtype='U'open cur_1
fetch next from cur_1 into @name
while(@@FETCH_STATUS=0)
begin
insert into # exec sp_spaceused @name
fetch next from cur_1 into @name
endselect 表名,数据使用空间 from #drop table #
close cur_1
deallocate cur_1
FOR
SELECT name FROM sysobjects WHERE type = 'U'
OPEN tables_cursor
DECLARE @tablename sysname
FETCH NEXT FROM tables_cursor INTO @tablename
WHILE (@@FETCH_STATUS <> -1)
BEGIN
EXEC ('Sp_SpaceUsed ' + @tablename)
FETCH NEXT FROM tables_cursor INTO @tablename
END
CLOSE tables_cursor
DEALLOCATE tables_cursor
Data varchar(18) 数据使用的空间总量。
index_size varchar(18) 索引使用的空间。
Unused varchar(18) 未用的空间量