Service SQL IBM i (AS/400) · Vue
QSYS2.LIBRARY_LIST_INFO
Liste des bibliothèques du travail
Renvoie la liste des bibliothèques du travail courant, dans l'ordre de recherche, avec leur type : l'équivalent SQL de DSPLIBL.
À quoi ça sert
La vue renvoie une ligne par bibliothèque de la liste de bibliothèques du travail qui l'interroge : position (ORDINAL_POSITION), nom SQL du schéma, nom système, type (système, produit, courante ou utilisateur), numéro d'ASP indépendant et texte descriptif. Elle ne montre que la liste du travail courant.
Elle sert à contrôler ce que voit le travail avant de lancer un traitement : une bibliothèque manquante ou placée au mauvais rang explique la plupart des programmes qui appellent une mauvaise version d'un objet. L'exemple d'IBM s'en sert pour s'assurer que TOYSTORE est la première bibliothèque de la partie utilisateur, puis ajuste la liste.
Comme elle se lit en SQL, la liste de bibliothèques peut être testée dans un script ou une procédure, par exemple pour interrompre un traitement si une bibliothèque obligatoire est absente.
Résultat réel sur un IBM i 7.5
Ce que nous avons exécuté :
SELECT * FROM QSYS2.LIBRARY_LIST_INFO
Ce que l'IBM i a renvoyé le 01/10/2026 (5 lignes au plus) :
| ORDINAL_POSITION Position ordinale | SCHEMA_NAME Nom du schéma | SYSTEM_SCHEMA_NAME Nom système de la bibliothèque | TYPE Type | IASP_NUMBER Numéro de l'ASP indépendant | TEXT_DESCRIPTION Texte descriptif |
|---|---|---|---|---|---|
| 1 | QSYS | QSYS | SYSTEM | 0 | Biblioth}que syst}me |
| 2 | QSYS2 | QSYS2 | SYSTEM | 0 | Biblioth}que syst}me pour CPI |
| 3 | QHLPSYS | QHLPSYS | SYSTEM | 0 | NULL |
| 4 | QUSRSYS | QUSRSYS | SYSTEM | 0 | System Library for Users |
| 5 | QIWS | QIWS | PRODUCT | 0 | NULL |
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
S'assurer que la bibliothèque TOYSTORE est la première de la partie utilisateur de la liste de bibliothèques.
-- Description: Ensure that the TOYSTORE library is the first library
-- in the user portion of the library list
BEGIN
DECLARE V_ROW_NUM INTEGER;
WITH CTE1(SCHEMA_NAME, ROW_NUM) AS (
SELECT SCHEMA_NAME, ROW_NUMBER() OVER (ORDER BY ORDINAL_POSITION) AS ROW_NUM
FROM QSYS2.LIBRARY_LIST_INFO WHERE TYPE = 'USER'
) SELECT ROW_NUM INTO V_ROW_NUM FROM CTE1 WHERE SCHEMA_NAME = 'TOYSTORE';
IF (V_ROW_NUM IS NULL) THEN
CALL QSYS2.QCMDEXC('QSYS/ADDLIBLE TOYSTORE');
ELSEIF (V_ROW_NUM > 1) THEN
BEGIN
CALL QSYS2.QCMDEXC('QSYS/RMVLIBLE TOYSTORE');
CALL QSYS2.QCMDEXC('QSYS/ADDLIBLE TOYSTORE');
END;
END IF;
END;
Colonnes renvoyées (6)
Afficher les 6 colonnes
| Colonne | Type | Signification |
|---|---|---|
ORDINAL_POSITION |
INTEGER | Position ordinale |
SCHEMA_NAME |
VARCHAR(128) | Nom du schéma |
SYSTEM_SCHEMA_NAME |
VARCHAR(10) | Nom système de la bibliothèque |
TYPE |
VARCHAR(15) | Type |
IASP_NUMBER |
SMALLINT | Numéro de l'ASP indépendant |
TEXT_DESCRIPTION |
VARG | Texte descriptif |