sp_indexes (Transact-SQL)

Renvoie les informations d'index pour la table distante spécifiée.

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

Syntaxe

sp_indexes [ @table_server = ] 'table_server' 
     [ , [ @table_name = ] 'table_name' ] 
     [ , [ @table_schema = ] 'table_schema' ] 
     [ , [ @table_catalog = ] 'table_db' ] 
     [ , [ @index_name = ] 'index_name' ] 
     [ , [ @is_unique = ] 'is_unique' ]

Arguments

  • [ @table_server = ] 'table_server'
    Nom du serveur lié exécutant SQL Server pour lequel les informations de table sont demandées. L'argument table_server est du type sysname, sans valeur par défaut.

  • [ @table_name = ] 'table_name'
    Nom de la base de données distante pour laquelle les informations d'index sont demandées. L'argument table_name est du type sysname, avec NULL comme valeur par défaut. Si la valeur de cet argument est NULL, toutes les tables de la base de données spécifiée sont renvoyées.

  • [ @table_schema = ] 'table_schema'
    Schéma de la table. Dans l'environnement SQL Server, cet argument correspond au propriétaire de la table. L'argument table_schema est du type sysname, avec NULL comme valeur par défaut.

  • [ @table_catalog = ] 'table_db'
    Nom de la base de données qui contient table_name. L'argument table_db est du type sysname, avec NULL comme valeur par défaut. Si la valeur de cet argument est NULL, table_db prend par défaut la valeur master.

  • [ @index_name = ] 'index_name'
    Nom de l'index pour lequel les informations sont demandées. L'argument index est du type sysname, avec NULL comme valeur par défaut.

  • [ @is_unique = ] 'is_unique'
    Type d'index pour lequel les informations sont demandées. L'argument is_unique est du type bit, avec NULL comme valeur par défaut, et il peut prendre l'une des valeurs ci-dessous.

    Valeur

    Description

    1

    Renvoie des informations sur les index uniques.

    0

    Renvoie des informations sur les index qui ne sont pas uniques.

    NULL

    Renvoie des informations sur tous les index.

Jeux de résultats

Nom de colonne

Type de données

Description

TABLE_CAT

sysname

Nom de la base de données qui contient la table spécifiée.

TABLE_SCHEM

sysname

Schéma de la table.

TABLE_NAME

sysname

Nom de la table distante.

NON_UNIQUE

smallint

Indique si l'index est unique ou non :

0 = Unique

1 = Non unique

INDEX_QUALIFIER

sysname

Nom du propriétaire de l'index. Certains produits SGBD acceptent que des utilisateurs autres que le propriétaire de la table créent des index. Dans SQL Server, cette colonne est toujours identique à TABLE_NAME.

INDEX_NAME

sysname

Nom de l'index.

TYPE

smallint

Type de l'index :

0 = Statistiques pour une table

1 = Ordonné en clusters

2 = Haché

3 = Autre

ORDINAL_POSITION

int

Numéro d'ordre de la colonne dans l'index. La première colonne dans l'index est 1. Cette colonne renvoie toujours une valeur.

COLUMN_NAME

sysname

Nom correspondant de chaque colonne de la table TABLE_NAME renvoyée.

ASC_OR_DESC

varchar

Ordre utilisé dans les classements :

A = Croissant

D = Décroissant

NULL = Non applicable

SQL Server renvoie toujours A.

CARDINALITY

int

Nombre de lignes dans la table ou de valeurs uniques dans l'index.

PAGES

int

Nombre de pages pour le stockage de l'index ou de la table.

FILTER_CONDITION

nvarchar(4000)

SQL Server ne renvoie pas une valeur.

Autorisations

Demande une autorisation SELECT sur le schéma.

Exemples

L'exemple suivant renvoie toutes les informations d'index à partir de la table Employees de la base de données AdventureWorks2008R2 sur le serveur lié Seattle1.

EXEC sp_indexes @table_server = 'Seattle1', 
   @table_name = 'Employee', 
   @table_schema = 'HumanResources',
   @table_catalog = 'AdventureWorks2008R2'