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.
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 delle proprietà del database da restituire. property è di tipo varchar(128). I possibili valori 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 rigenerato 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 è disattivato.
1 = true
0 = false
NULL = input non valido.
IsFulltextKey
L'indice è la chiave full-text di una tabella.
1 = true
0 = false o indice XML.
NULL = input non valido.
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.
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.
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.
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.
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 INDEXPROPERTY 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 restituiti i valori delle proprietà IsClustered, IndexDepth e IndexFillFactor per l'indice PK_Employee_EmployeeID della tabella Employee.
USE AdventureWorks2008R2;
GO
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];
GO
Set di risultati:
Is Clustered Index Depth Fill Factor
------------ ----------- -----------
1 2 0
(1 row(s) affected)
Vedere anche