Condividi tramite


INDEXKEY_PROPERTY (Transact-SQL)

Restituisce informazioni su una chiave dell'indice. Per gli indici XML, restituisce NULL.

Nota importanteImportante

Questa caratteristica verrà rimossa a partire da una delle prossime versioni di Microsoft SQL Server. Evitare di utilizzare questa funzionalità in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata. Utilizzare sys.index_columns (Transact-SQL) in alternativa.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

INDEXKEY_PROPERTY ( object_ID ,index_ID ,key_ID ,property )

Argomenti

  • object_ID
    Numero di identificazione dell'oggetto della tabella o vista indicizzata. object_ID è di tipo int.

  • index_ID
    Numero di identificazione dell'indice. index_ID è di tipo int.

  • key_ID
    Posizione della colonna chiave indice. key_ID è di tipo int.

  • property
    Nome della proprietà di cui si desidera ottenere informazioni. property è una stringa di caratteri. I possibili valori sono i seguenti.

    Valore

    Descrizione

    ColumnId

    ID della colonna nella posizione key_ID dell'indice.

    IsDescending

    Ordine in cui viene archiviata la colonna dell'indice.

    1 = decrescente 0 = crescente

Tipi restituiti

int

Eccezioni

Restituisce NULL in caso di errore o se un chiamante non dispone dell'autorizzazione necessaria per visualizzare l'oggetto.

Un utente può visualizzare esclusivamente i metadati delle entità a protezione diretta di cui è proprietario o per cui ha ricevuto un'autorizzazione. Di conseguenza, le funzioni predefinite di creazione dei metadati come INDEXKEY_PROPERTY possono restituire NULL se l'utente non dispone di alcuna autorizzazione per l'oggetto. Per ulteriori informazioni, vedere Configurazione della visibilità dei metadati e Risoluzione dei problemi relativi alla visibilità dei metadati.

Esempi

Nell'esempio seguente vengono restituite entrambe le proprietà per l'ID di indice 1, la colonna chiave 1 nella tabella Production.Location.

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

Set di risultati:

Column ID   Asc or Desc order 
----------- ----------------- 
1           0

(1 row(s) affected)