Попробуйте это:
SELECT s.NAME + '.' + t.NAME AS TableName
FROM sys.tables t
INNER JOIN sys.schemas s
ON t.schema_id = s.schema_id
будет отображать схему + имя таблицы для всех таблиц в текущей базе данных.
Вот версия, в которой будут перечислены все таблицы в каждой базе данных на текущем сервере. он позволяет использовать параметр поиска в любой части или частях сервера + база данных + схема + имена таблиц:
SET NOCOUNT ON
DECLARE @AllTables table (CompleteTableName nvarchar(4000))
DECLARE @Search nvarchar(4000)
,@SQL nvarchar(4000)
SET @Search=null --all rows
SET @SQL='select @@SERVERNAME+''.''+''?''+''.''+s.name+''.''+t.name from [?].sys.tables t inner join sys.schemas s on t.schema_id=s.schema_id WHERE @@SERVERNAME+''.''+''?''+''.''+s.name+''.''+t.name LIKE ''%'+ISNULL(@SEARCH,'')+'%'''
INSERT INTO @AllTables (CompleteTableName)
EXEC sp_msforeachdb @SQL
SET NOCOUNT OFF
SELECT * FROM @AllTables ORDER BY 1
установите для @Search значение NULL для всех таблиц, установите для него такие значения, как 'dbo.users' или 'users' или '.master.dbo', или даже включите подстановочные знаки, такие как '.master.%. U' и т. Д.