sp_tables_ex (Transact-SQL)

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

Значок ссылки на разделСинтаксические обозначения в Transact-SQL

Синтаксис

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

Аргументы

  • [ @table_server= ] 'table_server'
    Имя связанного сервера, для которого необходимо вернуть сведения о таблице. Аргумент table_server имеет тип sysname и не имеет значения по умолчанию.

  • [ , [ @table_name= ] 'table_name']
    Имя таблицы, для которой требуется возвратить информацию о типах данных. Аргумент table_name имеет тип sysname и значение по умолчанию NULL.

  • [ @table_schema= ] 'table_schema']
    Схема таблицы. Аргумент table_schema имеет тип sysname и значение по умолчанию NULL.

  • [ @table_catalog= ] 'table_catalog'
    Имя базы данных, в которой находится указанная таблица table_name. Аргумент table_catalog имеет тип sysname и значение по умолчанию NULL.

  • [ @table_type= ] 'table_type'
    Тип возвращаемой таблицы. Аргумент table_type имеет тип sysname и значение по умолчанию NULL, а также может принимать одно из следующих значений.

    Значение

    Описание

    ALIAS

    Имя псевдонима.

    GLOBAL TEMPORARY

    Имя временной таблицы, доступной в пределах системы.

    LOCAL TEMPORARY

    Имя временной таблицы, доступной только для текущего задания.

    SYNONYM

    Имя синонима.

    SYSTEM TABLE

    Имя системной таблицы.

    SYSTEM VIEW

    Имя системного представления.

    TABLE

    Имя пользовательской таблицы.

    VIEW

    Имя представления.

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

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

Нет

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

Имя столбца

Тип данных

Описание

TABLE_CAT

sysname

Имя квалификатора таблицы. Некоторые СУБД поддерживают имена таблиц из трех частей (квалификатор.владелец.имя). В SQL Server 2008 этот столбец представляет имя базы данных. В некоторых других СУБД он представляет имя сервера в среде баз данных, где находится таблица. Это поле может иметь значение NULL.

TABLE_SCHEM

sysname

Имя владельца таблицы. В SQL Server этот столбец представляет имя пользователя базы данных, создавшего таблицу. Это поле всегда возвращает значение.

TABLE_NAME

sysname

Имя таблицы. Это поле всегда возвращает значение.

TABLE_TYPE

varchar(32)

Таблица, системная таблица или представление.

REMARKS

varchar(254)

SQL Server не возвращает значения в этом столбце.

Замечания

Хранимая процедура sp_tables_ex выполняется путем запроса набора строк TABLES для интерфейса поставщика OLE DB IDBSchemaRowset, соответствующего table_server. Этому интерфейсу для ограничения числа возвращаемых строк передаются аргументы table_name, table_schema, table_catalog и column.

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

Разрешения

Необходимо разрешение SELECT для схемы.

Примеры

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

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