Site Search:
Sign in | Join | Help
4Penny.net

SQL Server (T-SQL)

Comments and notes on SQL Server 2000, 2005, and T-SQL

Script that will show the space used for all tables in a SQL Server DB

Script that will show the space used for all tables in a SQL Server DB

set nocount on
declare @sql varchar(128)
declare @SourceDB varchar(128)
select @SourceDB = 'ngb01'


 create table #tables(name varchar(128))
 
 select @sql = 'insert #tables select TABLE_NAME from ' + @SourceDB + '.INFORMATION_SCHEMA.TABLES where TABLE_TYPE = ''BASE TABLE'''
 exec (@sql)
 
 create table #SpaceUsed (name varchar(128), rows varchar(11), reserved varchar(18), data varchar(18), index_size varchar(18), unused varchar(18))
 declare @name varchar(128)
 select @name = ''
 while exists (select * from #tables where name > @name)
 begin
  
  select @name = min(name) from #tables where name > @name
  select @sql = 'exec ' + @SourceDB + '..sp_executesql N''insert #SpaceUsed exec sp_spaceused ' + @name + ''''
print @sql
  exec (@sql)
 end
 select * from #SpaceUsed
 drop table #tables
 drop table #SpaceUsed
go

Comments

No Comments

About Steve Gray

Steve is a seasoned (translate: old) developer in VB and ASP.NET. He spends most of his time in Dynamics GP, writing custom mods for consulting firms. Crystal reports, eConnect, VS Tools for Dynamics... anything that comes along.