sp_indexes (Transact-SQL)
Renvoie les informations d'index pour la table distante spécifiée.
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'
Voir aussi