drop table spacehistory go create procedure sp_spacemon as declare @dbname varchar(30) declare @sqlst varchar(254) --create table if not exist if not exists (select * from sysobjects where id = object_id('dbo.spacehistory') and sysstat & 0xf = 3) create table spacehistory (dbname varchar(30) not null, tablename varchar(30) not null, recorddate datetime not null, rows integer, reserved integer, data integer, index_size integer, unused integer, primary key (dbname, tablename, recorddate)) declare dbnamecur cursor for select name from master..sysdatabases where dbid > 5 /**************************** * name dbid * *---------------------------* * master 1 * * tempdb 2 * * model 3 * * pubs 4 * * msdb 5 * ****************************/ open dbnamecur fetch next from dbnamecur into @dbname while (@@fetch_status <> -1) begin if (@@fetch_status <> -2) begin select @sqlst = 'insert spacehistory execute ' + @dbname + '..sp_spacehistory' exec(@sqlst) end fetch next from dbnamecur into @dbname end deallocate dbnamecur