Основано на ответе Мартина Смита, приведенном выше, но обобщено для представления своего рода кросс-DB-версии sys.tables -
CREATE VIEW ListTablesAllDBs
AS
SELECT
DB_NAME(database_id) as DBName,
OBJECT_SCHEMA_NAME(object_id,database_id) as SchemaName,
OBJECT_NAME(object_id,database_id) as TableName
FROM
[sys].[dm_db_index_operational_stats](NULL,NULL,NULL,NULL)
Теперь, если только я смогу найти способ сделать то же самое для столбцов .......
РЕДАКТИРОВАТЬ - игнорировать это, обнаруживая, что иногда пропускает таблицы вообще.