sp_indexes (Transact-SQL)
S’applique à : SQL Server
Renvoie les informations d'index pour la table distante spécifiée.
Conventions de la syntaxe Transact-SQL
Syntaxe
sp_indexes
[ @table_server = ] N'table_server'
[ , [ @table_name = ] N'table_name' ]
[ , [ @table_schema = ] N'table_schema' ]
[ , [ @table_catalog = ] N'table_catalog' ]
[ , [ @index_name = ] N'index_name' ]
[ , [ @is_unique = ] is_unique ]
[ ; ]
Arguments
[ @table_server = ] N’table_server'
Nom d’un serveur lié exécutant SQL Server pour lequel les informations de table sont demandées. @table_server est sysname, sans valeur par défaut.
[ @table_name = ] N'table_name'
Nom de la table distante pour laquelle fournir des informations d’index. @table_name est sysname, avec la valeur par défaut NULL
. Si NULL
, toutes les tables de la base de données spécifiée sont retournées.
[ @table_schema = ] N’table_schema'
Spécifie le schéma de table. @table_schema est sysname, avec la valeur par défaut NULL
. Dans l’environnement SQL Server, cette valeur correspond au propriétaire de la table.
[ @table_catalog = ] N’table_catalog'
Nom de la base de données dans laquelle réside @table_name . @table_catalog est sysname, avec la valeur par défaut NULL
. Si NULL
, @table_catalog valeur master
par défaut .
[ @index_name = ] N’index_name'
Nom de l’index pour lequel les informations sont demandées. @index_name est sysname, avec la valeur par défaut NULL
.
[ @is_unique = ] is_unique
Type d’index pour lequel retourner des informations. @is_unique est bit et peut être l’une des valeurs suivantes.
Valeur | Description |
---|---|
1 |
Renvoie des informations sur les index uniques. |
0 |
Retourne des informations sur les index qui ne sont pas uniques. |
NULL (valeur par défaut) |
Renvoie des informations sur tous les index. |
Jeu 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 = Unique1 = Non unique |
INDEX_QUALIFER |
sysname | Nom du propriétaire de l'index. Certains produits de système de gestion de base de données (SGBD) permettent aux utilisateurs autres que le propriétaire de la table de créer des index. Dans SQL Server, cette colonne est toujours la même que TABLE_NAME . |
INDEX_NAME |
sysname | Nom de l'index. |
TYPE |
smallint | Type de l'index :0 = Statistiques d’une table1 = Clustered2 = Hachage3 = Autre |
ORDINAL_POSITION |
int | Numéro d'ordre de la colonne dans l'index. La première colonne de l’index est 1 . Cette colonne renvoie toujours une valeur. |
COLUMN_NAME |
sysname | Nom correspondant de la colonne pour chaque colonne du TABLE_NAME retour. |
ASC_OR_DESC |
varchar | Ordre utilisé dans le classement :A = CroissantD = DécroissantNULL = Non applicableSQL Server retourne A toujours . |
CARDINALITY |
int | Nombre de lignes dans la table ou de valeurs uniques dans l'index. |
PAGES |
int | Nombre de pages à stocker l’index ou la table. |
FILTER_CONDITION |
nvarchar(4000) | SQL Server ne retourne pas de valeur. |
autorisations
Nécessite l’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 AdventureWorks2022
sur le serveur lié Seattle1
.
EXEC sp_indexes @table_server = 'Seattle1',
@table_name = 'Employee',
@table_schema = 'HumanResources',
@table_catalog = 'AdventureWorks2022';