INDEXPROPERTY (Transact-SQL)

Mis à jour : 17 juillet 2006

Retourne la valeur de la propriété de l'index ou des statistiques nommés en fonction d'un numéro d'identification de table, d'un nom d'index ou de statistiques et d'un nom de propriété spécifiés. Retourne la valeur NULL pour les index XML.

Icône Lien de rubriqueConventions de la syntaxe de Transact-SQL

Syntaxe

INDEXPROPERTY ( object_ID , index_or_statistics_name , property ) 

Arguments

  • object_ID
    Expression qui contient le numéro d'identification d'objet de la table ou de la vue indexée dont les informations de propriété d'index doivent être fournies. object_ID est de type int.
  • index_or_statistics_name
    Expression qui contient le nom de l'index ou des statistiques dont les informations de propriété doivent être retournées. index_or_statistics_name est de type nvarchar(128).
  • property
    Expression reprenant le nom de la propriété de base de données à renvoyer. property est de type varchar(128) et peut prendre l'une des valeurs suivantes :

    ms187729.note(fr-fr,SQL.90).gifRemarque :
    Sauf indication contraire, la valeur NULL est retournée lorsque property n'est pas un nom de propriété valide, lorsque object_ID n'est pas un ID d'objet valide, lorsque object_ID est un type d'objet qui n'est pas pris en charge pour la propriété spécifiée ou lorsque l'appelant n'est pas autorisé à consulter les métadonnées de l'objet.
    Propriété Description Valeur

    IndexDepth

    Profondeur de l'index

    Nombre de niveaux d'index.

    NULL = une entrée ou un index XML n'est pas valide.

    IndexFillFactor

    Valeur de facteur de remplissage utilisée lors de la création et de la dernière restauration de l'index.

    Facteur de remplissage

    IndexID

    Identificateur d'index sur une table ou une vue indexée spécifiée

    ID de l'index

    IsAutoStatistics

    Les statistiques ont été générées par l'option AUTO_CREATE_STATISTICS de ALTER DATABASE.

    1 = True

    0 = False ou index XML.

    IsClustered

    Index cluster

    1 = True

    0 = False ou index XML.

    IsDisabled

    L'index est désactivé.

    1 = True

    0 = False

    NULL = l'entrée n'est pas valide.

    IsFulltextKey

    L'index représente la clé de texte intégral d'une table.

    1 = True

    0 = False ou index XML.

    NULL = l'entrée n'est pas valide.

    IsHypothetical

    L'index est hypothétique et ne peut être utilisé directement comme un chemin d'accès aux données. Les index hypothétiques conservent des statistiques au niveau des colonnes et sont gérés et utilisés par l'Assistant Paramétrage du moteur de base de données.

    1 = True

    0 = False ou index XML

    NULL = l'entrée n'est pas valide.

    IsPadIndex

    L'index spécifie l'espace à laisser ouvert sur chaque nœud intérieur.

    1 = True

    0 = False ou index XML.

    IsPageLockDisallowed

    Valeur de verrouillage de page définie par l'option ALLOW_PAGE_LOCKS de ALTER INDEX.

    1 = le verrouillage des pages n'est pas autorisé.

    0 = le verrouillage des pages est autorisé.

    NULL = l'entrée n'est pas valide.

    IsRowLockDisallowed

    Valeur de verrouillage de ligne définie par l'option ALLOW_ROW_LOCKS de ALTER INDEX.

    1 = le verrouillage des lignes n'est pas autorisé.

    0 = le verrouillage des lignes est autorisé.

    NULL = l'entrée n'est pas valide.

    IsStatistics

    index_or_statistics_name représente des statistiques créées par l'instruction CREATE STATISTICS ou par l'option AUTO_CREATE_STATISTICS de ALTER DATABASE.

    1 = True

    0 = False ou index XML.

    IsUnique

    L'index est unique.

    1 = True

    0 = False ou index XML.

Exceptions

Retourne la valeur NULL en cas d'erreur ou si un appelant n'est pas autorisé à afficher l'objet.

Dans SQL Server 2005, un utilisateur peut voir uniquement les métadonnées des éléments sécurisables qui lui appartiennent ou pour lesquels il dispose d'un droit d'accès. Cela signifie que les fonctions intégrées générant des métadonnées, telles que INDEXPROPERTY, peuvent retourner la valeur NULL si l'utilisateur ne dispose d'aucune autorisation sur l'objet. Pour plus d'informations, consultez Configuration de la visibilité des métadonnées et Dépannage de la visibilité des métadonnées.

Types de retour

int

Exemple

L'exemple suivant retourne les valeurs des propriétés IsClustered, IndexDepth et IndexFillFactor de l'index PK_Employee_EmployeeID de la table Employee.

USE AdventureWorks;
GO
SELECT 
    INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'),
        'PK_Employee_EmployeeID','IsClustered')AS [Is Clustered],
    INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'),
        'PK_Employee_EmployeeID','IndexDepth') AS [Index Depth],
    INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'),
        'PK_Employee_EmployeeID','IndexFillFactor') AS [Fill Factor];
GO

Voici le jeu de résultats obtenu :

Is Clustered Index Depth Fill Factor 
------------ ----------- ----------- 
1            2           0

(1 row(s) affected)

Voir aussi

Référence

CREATE INDEX (Transact-SQL)
sys.indexes (Transact-SQL)
sys.index_columns (Transact-SQL)
sys.stats (Transact-SQL)
sys.stats_columns (Transact-SQL)

Autres ressources

Statistiques d'index
Dépannage de la visibilité des métadonnées

Aide et Informations

Assistance sur SQL Server 2005

Historique des modifications

Version Historique

17 juillet 2006

Nouveau contenu :
  • Ajout de la section Exceptions.