• Try this:

    DECLARE @database_name SYSNAME

    DECLARE @iRowCount INT

    DECLARE @t_TableNames_Temp TABLE

    (table_name SYSNAME)

    drop table #file_check

    create table #file_check(DBName sysname,MDFFile sysname,LDFFile sysname)

    INSERT @t_TableNames_Temp

    SELECT name

    FROM SYSDATABASES

    WHERE name not in ('pubs','northwind','tempdb')

    ORDER BY name

    --Getting row count from table

    SELECT @iRowCount = COUNT(*) FROM @t_TableNames_Temp

    WHILE @iRowCount > 0

    BEGIN

    SELECT @database_name = table_name from @t_TableNames_Temp

    exec('use['+@database_name+']

    insert #file_check

    select '''+@database_name+''',

    (select rtrim(filename) from sysfiles where fileid =1 and filename not like ''H:\MSSQL\'+@database_name+'\DATA\'+@database_name+'_Data.mdf''),

    (select rtrim(filename) from sysfiles where fileid =2 and filename not like ''I:\MSSQL\'+@database_name+'\LOG\'+@database_name+'_Log.ldf'')

    from sysfiles;')

    DELETE FROM @t_TableNames_Temp WHERE @database_name = table_name

    SELECT @iRowCount = @iRowCount - 1

    END

    Select * from #file_check

    SET NOCOUNT OFF

    HTH

    MJ