• Thanks for reply, but I am getting the following error:

    Msg 2812, Level 16, State 62, Line 1

    Could not find stored procedure 'sp_spaceused2'.

    declare @cmd nvarchar(100)

    declare @db_name varchar(128)

    declare db_cursor cursor for

    select name from master..sysdatabases where name not in ('master','tempdb','model','msdb')

    IF object_id('tempdb..#TableSize') IS NOT NULL

    begin

    DROP TABLE #TableSize

    end

    create table #TableSize (database_name varchar(150),

    id int,

    table_schema varchar(150),

    table_name varchar(150),

    num_rows int,

    reserved varchar(150),

    data varchar(150),

    index_size varchar(150),

    unused varchar(150)

    )

    open db_cursor

    fetch next from db_cursor into @db_name

    while @@FETCH_STATUS = 0

    begin

    set @cmd='USE ['+@db_name+']; EXEC sp_spaceused2 ''?'' ; '

    insert into #TableSize

    EXEC sp_MSforeachtable @command1=@cmd

    fetch next from db_cursor into @db_name

    end

    close db_cursor

    deallocate db_cursor

    select * from #TableSize

    drop table #TableSize