Partager via


INDEXKEY_PROPERTY (Transact-SQL)

Retourne des informations concernant la clé d'index. Retourne la valeur NULL pour les index XML.

Important

Cette fonctionnalité sera supprimée dans une prochaine version de Microsoft SQL Server. Évitez d'utiliser cette fonctionnalité dans de nouveaux travaux de développement et prévoyez de modifier les applications qui utilisent actuellement cette fonctionnalité. Utilisez plutôt sys.index_columns (Transact-SQL).

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

Syntaxe

INDEXKEY_PROPERTY ( object_ID ,index_ID ,key_ID ,property )

Arguments

  • object_ID
    Numéro d'identification de l'objet de la table ou de la vue indexée. object_ID est de type int.

  • index_ID
    Numéro d'identification de l'index. index_ID est de type int.

  • key_ID
    Position de la colonne de clé d'index. key_ID est de type int.

  • property
    Nom de la propriété dont les informations doivent être retournées. property est une chaîne de caractères et peut prendre l'une des valeurs suivantes.

    Valeur

    Description

    ColumnId

    Identificateur (ID) de colonne à la position key_ID de l'index

    IsDescending

    Ordre de stockage de la colonne d'index

    1 = décroissant 0 = croissant

Types de retour

int

Exceptions

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

Un utilisateur peut voir uniquement les métadonnées des éléments sécurisables qui lui appartiennent ou pour lesquels il dispose d'une autorisation. Cela signifie que les fonctions intégrées générant des métadonnées, telles que INDEXKEY_PROPERTY, 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.

Exemple

Dans l'exemple suivant, les deux propriétés sont retournées pour l'ID index 1, la colonne clé 1 dans la table 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];

Voici le jeu de résultats obtenu :

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

(1 row(s) affected)