Aller au contenu

Service SQL IBM i (AS/400) · Fonction table

QSYS2.USER_INDEX_ENTRIES

Entrées d'un index utilisateur

Fonction de table qui lit les entrées d'un index utilisateur (*USRIDX) : position, clé et contenu, en caractères ou en binaire.

À quoi ça sert

USER_INDEX_ENTRIES renvoie une ligne par entrée d'un index utilisateur, avec la position (ORDINAL_POSITION), la clé et le contenu de l'entrée, chacun sous deux formes : texte (KEY, ENTRY) et binaire (KEY_BINARY, ENTRY_BINARY).

Les paramètres sont le nom de l'index (USER_INDEX) et sa bibliothèque (USER_INDEX_LIBRARY, par défaut *LIBL). Elle permet d'examiner le contenu d'un index utilisé par une application, par exemple pour le déboguer, sans écrire de programme.

Les attributs de l'index (longueur de clé, nombre d'entrées) se lisent dans USER_INDEX_INFO.

Résultat réel sur un IBM i 7.5

Ce que nous avons exécuté :

SELECT * FROM TABLE(QSYS2.USER_INDEX_ENTRIES(USER_INDEX => 'DEMOIDX', USER_INDEX_LIBRARY => 'JOBISQL')) X

Ce que l'IBM i a renvoyé le 01/10/2026 (3 lignes au plus) :

ORDINAL_POSITION Position ordinale USER_INDEX_LIBRARY Bibliothèque de l'index utilisateur USER_INDEX Nom de l'index utilisateur KEY Clé KEY_BINARY Clé au format binaire ENTRY Entrée ENTRY_BINARY Entrée au format binaire
1 JOBISQL UTIL908 00001 F0F0F0F0F1 Lyon D3A896954040404040404040404040404040404040404040404040404040404040404040404040404040404040
2 JOBISQL UTIL908 00002 F0F0F0F0F2 Nantes D58195A385A2404040404040404040404040404040404040404040404040404040404040404040404040404040
3 JOBISQL UTIL908 00003 F0F0F0F0F3 Lille D38993938540404040404040404040404040404040404040404040404040404040404040404040404040404040

Données anonymisées : les noms de système, de profils, de bibliothèques, de postes et les adresses IP ont été remplacés. Les objets du schéma JOBISQL sont des objets de démonstration créés pour ce site.

L'exemple d'IBM

Examiner toutes les entrées de l'index utilisateur IX1 de la bibliothèque TESTLIB.

-- Description: Look at all the entries in user index IX1 in TESTLIB. 
    SELECT * FROM TABLE(QSYS2.USER_INDEX_ENTRIES( 
               USER_INDEX => 'IX1',  
              USER_INDEX_LIBRARY => 'TESTLIB')) 
  ORDER BY ORDINAL_POSITION;

Paramètres

ParamètreTypePar défautSignification
USER_INDEX VARCHAR(10) obligatoire Nom de l'index utilisateur
USER_INDEX_LIBRARY VARCHAR(10) '*LIBL' Bibliothèque de l'index utilisateur

Colonnes renvoyées (7)

Afficher les 7 colonnes
ColonneTypeSignification
ORDINAL_POSITION INTEGER Position ordinale
USER_INDEX_LIBRARY VARCHAR(10) Bibliothèque de l'index utilisateur
USER_INDEX VARCHAR(10) Nom de l'index utilisateur
KEY VARCHAR(2000) Clé
KEY_BINARY BINARY VARYING Clé au format binaire
ENTRY VARCHAR(2000) Entrée
ENTRY_BINARY BINARY VARYING Entrée au format binaire