INDEXKEY_PROPERTY (Transact-SQL)

Aplica-se a: SQL ServerAzure SQL Managed Instance

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

Importante

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

Transact-SQL convenções de sintaxe

Syntax

INDEXKEY_PROPERTY ( object_ID ,index_ID ,key_ID ,property )  

Arguments

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

index_ID
É o número de identificação do índice. index_ID é inteligência.

key_ID
É a posição da coluna chave do índice. key_ID é inteligência.

propriedade
É o nome da propriedade para a qual a informação será devolvida. propriedade é uma cadeia de caracteres e pode ser um dos seguintes valores.

Value Description
ColumnId ID da coluna na posição key_ID do índice.
IsDescendente Ordem em que a coluna índice é armazenada.

1 = Descendente 0 = Ascendente

Tipos de devolução

int

Exceptions

Retorna NULL no erro ou se um chamador não tiver permissão para exibir o objeto.

Um usuário só pode visualizar os metadados de protegíveis que o usuário possui ou sobre os quais o usuário recebeu permissão. Isto significa que funções incorporadas que emitem metadados, como INDEXKEY_PROPERTY, podem devolver NULL se o utilizador não tiver qualquer permissão sobre o objeto. Para obter mais informações, consulte Configuração de visibilidade de metadados.

Examples

No exemplo seguinte, ambas as propriedades são devolvidas para o ID 1do índice , coluna 1 chave na Production.Location tabela.

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

Aqui está o conjunto de resultados:

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