Aller au contenu

Service SQL IBM i (AS/400) · Procédure

QSYS2.ADD_USER_INDEX_ENTRY

Ajouter une entrée à un index utilisateur

Procédure qui ajoute une entrée à un index utilisateur (objet *USRIDX) sans écrire de programme, avec ou sans clé.

À quoi ça sert

Cette procédure ajoute une entrée à l'index utilisateur USER_INDEX de la bibliothèque USER_INDEX_LIBRARY. Le paramètre ENTRY porte le contenu ajouté, et KEY sert pour les index à clé. Le paramètre REPLACE règle le remplacement d'une entrée existante.

Elle évite d'écrire un programme appelant l'API correspondante pour alimenter ou corriger un index utilisateur. Elle modifie l'objet : testez d'abord sur un index de recette. Les entrées se relisent avec QSYS2.USER_INDEX_ENTRIES.

Résultat réel sur un IBM i 7.5

Ce que nous avons exécuté :

CALL QSYS2.ADD_USER_INDEX_ENTRY(USER_INDEX => 'DEMOIDX3', USER_INDEX_LIBRARY => 'JOBISQL', REPLACE => 'YES', ENTRY => 'Commande à préparer', KEY => '01001');
CALL QSYS2.ADD_USER_INDEX_ENTRY(USER_INDEX => 'DEMOIDX3', USER_INDEX_LIBRARY => 'JOBISQL', REPLACE => 'YES', ENTRY => 'Commande expédiée', KEY => '01002');
SELECT ORDINAL_POSITION, KEY, ENTRY FROM TABLE(QSYS2.USER_INDEX_ENTRIES(USER_INDEX => 'DEMOIDX3', USER_INDEX_LIBRARY => 'JOBISQL')) X

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

ORDINAL_POSITION KEY ENTRY
1 01001 Commande à préparer
2 01002 Commande expédiée

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

Ajouter une nouvelle entrée à un index utilisateur sans clé.

-- Description: Add a new entry to a non-keyed user index. 
   CALL QSYS2.ADD_USER_INDEX_ENTRY(USER_INDEX => 'IX1',  
                                USER_INDEX_LIBRARY => 'APPLIB',  
                                OPERATION => 'UNIQUE', 
                                ENTRY => 'Next entry'));

Paramètres

ParamètreTypePar défautSignification
USER_INDEX VARCHAR(10) obligatoire Nom de l'index utilisateur
USER_INDEX_LIBRARY VARCHAR(10) obligatoire Bibliothèque de l'index utilisateur
REPLACE VARCHAR(3) obligatoire Remplacer l'entrée existante
ENTRY VARCHAR(2000) obligatoire Entrée
KEY VARCHAR(2000) NULL Clé