Partager via


INDEX_COL (Transact-SQL)

Renvoie le nom de la colonne indexée. Renvoie la valeur NULL pour les index XML.

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

Syntaxe

INDEX_COL ( '[ database_name . [ schema_name ] .| schema_name ]
    table_or_view_name', index_id , key_id ) 

Arguments

  • database_name
    Nom de la base de données.

  • schema_name
    Nom du schéma auquel appartient l'index.

  • table_or_view_name
    Nom de la table ou de la vue indexée. L'argument table_or_view_name doit être délimité par des guillemets simples et peut être qualifié par un nom de base de données et de schéma.

  • index_id
    Identificateur 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.

Type des valeurs renvoyées

nvarchar (128)

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 INDEX_COL, 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.

Exemples

A. Utilisation de INDEX_COL pour le renvoi d'une colonne d'index

L'exemple suivant renvoie le nom des deux colonnes clés dans l'index PK_SalesOrderDetail_SalesOrderID_LineNumber.

USE AdventureWorks;
GO
SELECT 
    INDEX_COL (N'AdventureWorks.Sales.SalesOrderDetail', 1,1) AS
        [Index Column 1], 
    INDEX_COL (N'AdventureWorks.Sales.SalesOrderDetail', 1,2) AS
        [Index Column 2]
;
GO

Voici le jeu de résultats obtenu :

Index Column 1      Index Column 2
-----------------------------------------------
SalesOrderID        SalesOrderDetailID