sp_tables_ex (Transact-SQL)

Aplica-se a:SQL Server

Retorna as informações de tabela sobre as tabelas do servidor vinculado especificado.

Convenções de sintaxe de Transact-SQL

Sintaxe

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 ]
[ ; ]

Argumentos

@table_server [ = ] N'table_server'

O nome do servidor vinculado para o qual retornar informações de tabela. @table_server é sysname, sem padrão.

[ @table_name = ] N'table_name'

O nome da tabela para a qual retornar informações de tipo de dados. @table_name é sysname, com um padrão de NULL.

@table_schema [ = ] N'table_schema'

O esquema da tabela. @table_schema é sysname, com um padrão de NULL.

@table_catalog [ = ] N'table_catalog'

O nome do banco de dados no qual o table_name especificado reside. @table_catalog é sysname, com um padrão de NULL.

@table_type [ = ] N'table_type'

O tipo de tabela a ser retornada. @table_type é sysname e pode ter um dos seguintes valores.

Valor Descrição
ALIAS Nome de um alias.
GLOBAL TEMPORARY Nome de uma tabela temporária disponível no sistema.
LOCAL TEMPORARY Nome de uma tabela temporária disponível somente para o trabalho atual.
SYNONYM Nome de um sinônimo.
SYSTEM TABLE Nome de uma tabela do sistema.
SYSTEM VIEW Nome de uma exibição do sistema.
TABLE Nome de uma tabela de usuário.
VIEW Nome de uma exibição.

@fUsePattern [ = ] fUsePattern

Determina se os caracteres , , %[e ] são interpretados como caracteres _curinga. Os valores válidos são 0 (correspondência de padrão desativada) e 1 (correspondência de padrão ativada). @fUsePattern é bit, com um padrão de 1.

Valores do código de retorno

Nenhum.

Conjunto de resultados

Nome da coluna Tipo de dados Descrição
TABLE_CAT sysname Nome do qualificador de tabela. Vários produtos DBMS suportam nomenclatura de três partes para tabelas (<qualifier>.<owner>.<name>). No SQL Server, essa coluna representa o nome do banco de dados. Em outros produtos, ela representa o nome do servidor do ambiente de banco de dados da tabela. Este campo pode ser NULL.
TABLE_SCHEM sysname O nome do proprietário da tabela. No SQL Server, esta coluna representa o nome do usuário de banco de dados que criou a tabela. Esse campo sempre retorna um valor.
TABLE_NAME sysname Nome da tabela. Esse campo sempre retorna um valor.
TABLE_TYPE varchar(32) Tabela, tabela do sistema ou exibição.
REMARKS varchar(254) O SQL Server não retorna um valor para esta coluna.

Comentários

sp_tables_ex é executado consultando o conjunto de linhas TABLES da IDBSchemaRowset interface do provedor OLE DB correspondente a table_server. Os parâmetros table_name, table_schema, table_catalog e coluna são passados para essa interface para restringir as linhas retornadas.

sp_tables_ex retornará um conjunto de resultados vazio se o provedor OLE DB do servidor vinculado especificado não oferecer suporte ao TABLESIDBSchemaRowset conjunto de linhas da interface.

Permissões

Requer a permissão SELECT no esquema.

Exemplos

O exemplo a seguir retorna informações sobre as tabelas que estão contidas no esquema HumanResources do banco de dados AdventureWorks2022 do servidor vinculado LONDON2.

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