INDEXPROPERTY (Transact-SQL)
Restituisce il valore delle proprietà di indice o statistiche specificate in base al numero di identificazione della tabella, al nome dell'indice o delle statistiche e al nome della proprietà. Restituisce NULL per gli indici XML.
Si applica a: SQL Server (SQL Server 2008 tramite versione corrente), Database SQL di Windows Azure (versione iniziale tramite versione corrente). |
Convenzioni della sintassi Transact-SQL
Sintassi
INDEXPROPERTY ( object_ID , index_or_statistics_name , property )
Argomenti
object_ID
Espressione che contiene il numero di identificazione della tabella o vista indicizzata di cui si desidera ottenere informazioni sulla proprietà dell'indice. object_ID è di tipo int.index_or_statistics_name
Espressione che contiene il nome dell'indice o delle statistiche per cui si desidera ottenere informazioni sulle proprietà. index_or_statistics_name è di tipo nvarchar(128).property
Espressione che contiene il nome della proprietà del database da restituire. property è di tipo varchar(128). I valori possibili sono i seguenti.Nota
Se non specificato diversamente, viene restituito NULL quando property non è un nome di proprietà valido, object_ID non è un ID di oggetto valido, object_ID è un tipo di oggetto non supportato per la proprietà specificata oppure il chiamante non dispone dell'autorizzazione necessaria per visualizzare i metadati dell'oggetto.
Proprietà
Descrizione
Valore
IndexDepth
Dettagli dell'indice.
Numero di livelli dell'indice.
NULL = indice XML o input non valido.
IndexFillFactor
Valore del fattore di riempimento utilizzato quando l'indice è stato creato o ricompilato per l'ultima volta.
Fattore di riempimento
IndexID
ID dell'indice della tabella o vista indicizzata specificata.
ID dell'indice
IsAutoStatistics
Le statistiche sono state generate mediante l'opzione AUTO_CREATE_STATISTICS di ALTER DATABASE.
1 = true
0 = false o indice XML.
IsClustered
Indice cluster.
1 = true
0 = false o indice XML.
IsDisabled
L'indice è disabilitato.
1 = true
0 = false
NULL = input non valido.
IsFulltextKey
L'indice è la chiave di indicizzazione full-text e semantica per una tabella.
1 = True
0 = False o indice XML.
NULL = Input non valido.
Si applica a: SQL Server 2008 tramite SQL Server 2014.
IsHypothetical
L'indice è ipotetico e non può essere utilizzato direttamente come percorso di accesso ai dati. Gli indici ipotetici contengono statistiche a livello di colonna e vengono gestiti e utilizzati da Ottimizzazione guidata motore di database.
1 = true
0 = false o indice XML.
NULL = input non valido.
IsPadIndex
All'indice è associata la quantità di spazio da lasciare aperto in ogni nodo interno.
1 = True
0 = False o indice XML.
Si applica a: SQL Server 2008 tramite SQL Server 2014.
IsPageLockDisallowed
Valore per il blocco di pagina impostato mediante l'opzione ALLOW_PAGE_LOCKS di ALTER INDEX.
1 = il blocco di pagina è disattivato.
0 = il blocco di pagina è attivato.
NULL = Input non valido.
Si applica a: SQL Server 2008 tramite SQL Server 2014.
IsRowLockDisallowed
Valore per il blocco di riga impostato tramite l'opzione ALLOW_ROW_LOCKS di ALTER INDEX.
1 = il blocco di riga è disattivato.
0 = il blocco di riga è attivato.
NULL = Input non valido.
Si applica a: SQL Server 2008 tramite SQL Server 2014.
IsStatistics
index_or_statistics_name rappresenta le statistiche create dall'istruzione CREATE STATISTICS o dall'opzione AUTO_CREATE_STATISTICS di ALTER DATABASE.
1 = true
0 = False o indice XML.
IsUnique
Indice univoco.
1 = True
0 = False o indice XML.
IsColumnstore
L'indice è un indice columnstore con ottimizzazione per la memoria xVelocity.
1 = True
0 = False
Si applica a: SQL Server 2012 tramite SQL Server 2014.
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 sicurezza diretta di cui è proprietario o per cui ha ricevuto un'autorizzazione. Di conseguenza, le funzioni predefinite di creazione dei metadati come INDEXPROPERTY possono restituire NULL se l'utente non dispone di alcuna autorizzazione per l'oggetto. Per ulteriori informazioni, vedere Configurazione della visibilità dei metadati.
Esempi
Nell'esempio seguente vengono restituiti i valori delle proprietà IsClustered, IndexDepth e IndexFillFactor per l'indice PK_Employee_BusinessEntityID della tabella Employee nel database AdventureWorks2012.
SELECT
INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'),
'PK_Employee_BusinessEntityID','IsClustered')AS [Is Clustered],
INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'),
'PK_Employee_BusinessEntityID','IndexDepth') AS [Index Depth],
INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'),
'PK_Employee_BusinessEntityID','IndexFillFactor') AS [Fill Factor];
Di seguito viene fornito il set di risultati:
Is Clustered Index Depth Fill Factor
------------ ----------- -----------
1 2 0
(1 row(s) affected)
Vedere anche
Riferimento
sys.index_columns (Transact-SQL)
sys.stats_columns (Transact-SQL)