sp_indexes (Transact-SQL)
Renvoie les informations d'index pour la table distante spécifiée.
Conventions de la 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. table_server est de type sysname et n'a pas de valeur par défaut.[ @table\_name= ] 'table_name'
Nom de la table distante pour laquelle les informations d'index sont demandées. table_name est de 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 retournées.[ @table\_schema= ] 'table_schema'
Schéma de la table. Dans l'environnement SQL Server, ceci correspond au propriétaire de la table. table_schema est de type sysname, avec NULL comme valeur par défaut.[ @table\_catalog= ] 'table_db'
Nom de la base de données contenant table_name. table_db est de 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. index est de type sysname, avec NULL comme valeur par défaut.[ @is\_unique= ] 'is_unique'
Type d'index pour lequel les informations sont demandées. is_unique est de 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 la 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_QUALIFER |
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 retourne toujours une valeur. |
COLUMN_NAME |
sysname |
Nom correspondant de chaque colonne de la table TABLE_NAME retournée. |
ASC_OR_DESC |
varchar |
Ordre utilisé dans les classements : A = Croissant D = Décroissant NULL = Non applicable SQL Server retourne 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 retourne pas de valeur. |
Autorisations
Nécessite 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 AdventureWorks2012 sur le serveur lié Seattle1.
EXEC sp_indexes @table_server = 'Seattle1',
@table_name = 'Employee',
@table_schema = 'HumanResources',
@table_catalog = 'AdventureWorks2012'
Voir aussi
Référence
Procédures stockées de requêtes distribuées (Transact-SQL)
sp_column_privileges (Transact-SQL)
sp_linkedservers (Transact-SQL)