INDEXKEY_PROPERTY (Transact-SQL)
Restituisce informazioni su una chiave dell'indice. Per gli indici XML, restituisce NULL.
Importante |
---|
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. |
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)