INDEXKEY_PROPERTY (Transact-SQL)

Aplica-se a:SQL ServerInstância Gerenciada de SQL do Azure

Retorna informações sobre a chave de índice. Retorna NULL para índices XML.

Importante

Esse recurso será removido em uma versão futura do SQL Server. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam. Em vez disso, use sys.index_columns (Transact-SQL).

Convenções de sintaxe de Transact-SQL

Sintaxe

INDEXKEY_PROPERTY ( object_ID ,index_ID ,key_ID ,property )  

Observação

Para exibir a sintaxe do Transact-SQL para o SQL Server 2014 (12.x) e versões anteriores, confira a Documentação das versões anteriores.

Argumentos

object_ID
É o número de identificação do objeto da tabela ou exibição indexada. object_ID é int.

index_ID
É o número de identificação do índice. index_ID é int.

key_ID
É a posição da coluna de chave do índice. key_ID é int.

property
O nome do arquivo da propriedade para o qual as informações serão retornadas. property é uma cadeia de caracteres e pode ter um dos valores a seguir.

Valor Descrição
ColumnId ID de Coluna na posição key_ID do índice.
IsDescending Ordem na qual a coluna de índice é armazenada.

1 = Descendente 0 = Ascendente

Tipos de retorno

int

Exceções

Retornará NULL em caso de erro ou se um chamador não tiver permissão para exibir o objeto.

Um usuário só pode exibir metadados de protegíveis de sua propriedade ou para os quais recebeu permissão. Isso significa que as funções internas emissoras de metadados, como INDEXKEY_PROPERTY, podem retornar NULL se o usuário não tiver permissão no objeto. Para obter mais informações, consulte Metadata Visibility Configuration.

Exemplos

No exemplo a seguir, são retornadas ambas as propriedades para ID de índice 1, coluna de chave 1 na tabela Production.Location.

USE AdventureWorks2022;  
GO  
SELECT   
    INDEXKEY_PROPERTY(OBJECT_ID('Production.Location', 'U'),  
        1,1,'ColumnId') AS [Column ID],  
    INDEXKEY_PROPERTY(OBJECT_ID('Production.Location', 'U'),  
        1,1,'IsDescending') AS [Asc or Desc order];  

Este é o conjunto de resultados:

Column ID   Asc or Desc order   
----------- -----------------   
1           0  
  
(1 row(s) affected)  

Consulte Também

INDEX_COL (Transact-SQL)
INDEXPROPERTY (Transact-SQL)
sys.objects (Transact-SQL)
sys.indexes (Transact-SQL)
sys.index_columns (Transact-SQL)