Поделиться через


sp_tables_ex (Transact-SQL)

Область применения: SQL Server

Возвращает табличные данные о таблицах на указанном связанном сервере.

Соглашения о синтаксисе Transact-SQL

Синтаксис

sp_tables_ex
    [ @table_server = ] N'table_server'
    [ , [ @table_name = ] N'table_name' ]
    [ , [ @table_schema = ] N'table_schema' ]
    [ , [ @table_catalog = ] N'table_catalog' ]
    [ , [ @table_type = ] N'table_type' ]
    [ , [ @fUsePattern = ] fUsePattern ]
[ ; ]

Аргументы

[ @table_server = ] N'table_server'

Имя связанного сервера, для которого возвращаются сведения о таблице. @table_server — sysname без значения по умолчанию.

[ @table_name = ] N'table_name'

Имя таблицы, для которой возвращаются сведения о типе данных. @table_name — sysname с значением по умолчаниюNULL.

[ @table_schema = ] N'table_schema'

Схема таблицы. @table_schema имеет имя sysname с значением по умолчаниюNULL.

[ @table_catalog = ] N'table_catalog'

Имя базы данных, в которой находится указанный table_name . @table_catalog — sysname с значением по умолчаниюNULL.

[ @table_type = ] N'table_type'

Тип возвращаемой таблицы. @table_type — sysname и может иметь одно из следующих значений.

значение Описание
ALIAS Имя псевдонима.
GLOBAL TEMPORARY Имя временной таблицы, доступной в пределах системы.
LOCAL TEMPORARY Имя временной таблицы, доступной только для текущего задания.
SYNONYM Имя синонима.
SYSTEM TABLE Имя системной таблицы.
SYSTEM VIEW Имя системного представления.
TABLE Имя пользовательской таблицы.
VIEW Имя представления.

[ @fUsePattern = ] fUsePattern

Определяет, интерпретируются ли символы _, %[и ] интерпретируются ли они как подстановочные знаки. Допустимые значения: 0 (сопоставление с шаблоном отключено) и 1 (сопоставление с шаблоном включено). @fUsePattern бит с значением по умолчанию1.

Значения кода возврата

Нет.

Результирующий набор

Имя столбца Тип данных Description
TABLE_CAT sysname Имя квалификатора таблицы. Различные продукты СУБД поддерживают трехкомпонентное именование таблиц (<qualifier>.<owner>.<name>). В SQL Server этот столбец представляет имя базы данных. В некоторых других СУБД он представляет имя сервера в среде баз данных, где находится таблица. Это поле может быть NULL.
TABLE_SCHEM sysname Имя владельца таблицы. В SQL Server этот столбец представляет имя пользователя базы данных, создавшего таблицу. Это поле всегда возвращает значение.
TABLE_NAME sysname Имя таблицы. Это поле всегда возвращает значение.
TABLE_TYPE varchar(32) Таблица, системная таблица или представление.
REMARKS varchar(254) SQL Server не возвращает значение для этого столбца.

Замечания

sp_tables_ex выполняется запросом набора IDBSchemaRowset строк ТАБЛИЦ интерфейса поставщика OLE DB, соответствующего table_server. Параметры table_name, table_schema, table_catalog и столбцов передаются в этот интерфейс, чтобы ограничить возвращаемые строки.

sp_tables_exвозвращает пустой результирующий набор, если поставщик OLE DB указанного связанного IDBSchemaRowset сервера не поддерживает TABLES набор строк интерфейса.

Разрешения

Требуется SELECT разрешение на схему.

Примеры

В следующем примере возвращается информация о таблицах, содержащихся в схеме HumanResources базы данных AdventureWorks2022, расположенной на связанном сервере LONDON2.

EXEC sp_tables_ex @table_server = 'LONDON2',
@table_catalog = 'AdventureWorks2022',
@table_schema = 'HumanResources',
@table_type = 'TABLE';