• My first thought was to try to use sp_foreachdb

    CREATE TABLE #databases(DbName SYSNAME, DbSize BIGINT, Remarks NVARCHAR(100))

    INSERT INTO #databases EXEC SP_DATABASES

    ALTER TABLE #databases ADD ObjectCount INT

    EXEC SP_MSFOREACHDB

    'USE [?] ;

    UPDATE #databases SET ObjectCount = (SELECT COUNT(*) FROM [sys].[objects])

    WHERE DBName = "?"'

    SELECT * FROM #databases ORDER BY ObjectCount DESC

    DROP TABLE #databases

    Regards,

    David