sp_indexes (Transact-SQL)
Retorna informações de índice da tabela remota especificada.
Convenções da sintaxe Transact-SQL
Sintaxe
sp_indexes [ @table_server = ] 'table_server'
[ , [ @table_name = ] 'table_name' ]
[ , [ @table_schema = ] 'table_schema' ]
[ , [ @table_catalog = ] 'table_db' ]
[ , [ @index_name = ] 'index_name' ]
[ , [ @is_unique = ] 'is_unique' ]
Argumentos
[ @table\_server= ] 'table_server'
É o nome de um servidor vinculado que executa o SQL Server para o qual as informações da tabela estão sendo solicitadas. table_server é sysname, sem padrão.[ @table\_name= ] 'table_name'
É o nome da tabela remota para a qual as informações de índice devem ser fornecidas. table_name é sysname, com o padrão de NULL. Se NULL, todas as tabelas no banco de dados especificado serão retornadas.[ @table\_schema= ] 'table_schema'
Especifica o esquema de tabela. No ambiente do SQL Server, isso corresponde ao proprietário de tabela. table_schema é sysname, com o padrão de NULL.[ @table\_catalog= ] 'table_db'
É o nome do banco de dados no qual table_name reside. table_db é sysname, com o padrão de NULL. Se NULL, table_db será padronizado como master.[ @index\_name= ] 'index_name'
É o nome do índice para o qual as informações estão sendo solicitadas. index é sysname, com o padrão de NULL.[ @is\_unique= ] 'is_unique'
É o tipo de índice para o qual as informações devem ser retornadas. is_unique é bit, com o padrão de NULL, e pode ser um dos valores a seguir.Valor
Descrição
1
Retorna informações sobre índices exclusivos.
0
Retorna informações sobre índices que não são exclusivos.
NULL
Retorna informações sobre todos os índices.
Conjuntos de resultados
Nome da coluna |
Tipo de dados |
Descrição |
---|---|---|
TABLE_CAT |
sysname |
Nome do banco de dados onde a tabela especificada reside. |
TABLE_SCHEM |
sysname |
Esquema da tabela. |
TABLE_NAME |
sysname |
Nome da tabela remota. |
NON_UNIQUE |
smallint |
Se o índice é exclusivo ou não exclusivo: 0 = Exclusivo 1 = Não exclusivo |
INDEX_QUALIFER |
sysname |
Nome do proprietário do índice. Alguns produtos DBMS permitem que outros usuários, que não o proprietário da tabela, criam índices. No SQL Server, essa coluna é sempre igual a TABLE_NAME. |
INDEX_NAME |
sysname |
Nome do índice. |
TYPE |
smallint |
Tipo de índice: 0 = Estatísticas de uma tabela 1 = Clusterizado 2 = Com hash 3 = Outro |
ORDINAL_POSITION |
int |
Posição ordinal da coluna no índice. A primeira coluna no índice é 1. Essa coluna sempre retorna um valor. |
COLUMN_NAME |
sysname |
É o nome correspondente da coluna para cada coluna de TABLE_NAME retornada. |
ASC_OR_DESC |
varchar |
É a ordem usada no agrupamento: A = Crescente D = Decrescente NULL = Não aplicável SQL Server sempre retorna A. |
CARDINALITY |
int |
É o número de linhas na tabela ou valores exclusivos no índice. |
PAGES |
int |
É o número de páginas para armazenar o índice ou a tabela. |
FILTER_CONDITION |
nvarchar(4000) |
O SQL Server não retorna um valor. |
Permissões
Requer a permissão SELECT no esquema.
Exemplos
O exemplo a seguir retorna todas as informações de índice da tabela Employees do banco de dados AdventureWorks2012 do servidor vinculado Seattle1.
EXEC sp_indexes @table_server = 'Seattle1',
@table_name = 'Employee',
@table_schema = 'HumanResources',
@table_catalog = 'AdventureWorks2012'
Consulte também
Referência
Procedimentos armazenados de consultas distribuídas (Transact-SQL)
sp_column_privileges (Transact-SQL)
sp_linkedservers (Transact-SQL)