Recette SQL IBM i (AS/400) · Stockage
La taille d'une bibliothèque et son nombre d'objets
La taille d'une bibliothèque IBM i, son nombre d'objets et sa journalisation en une requête, sans lancer DSPLIB.
Le besoin
Quelle place prend cette bibliothèque ? DSPLIB affiche les objets un par un sans total facile à récupérer ; LIBRARY_INFO le calcule directement.
La requête
SELECT OBJECT_COUNT, DECIMAL(LIBRARY_SIZE / 1048576.0, 15, 2) AS TAILLE_MO,
LIBRARY_SIZE_COMPLETE, LIBRARY_TYPE, JOURNALED, JOURNAL_NAME, TEXT_DESCRIPTION
FROM TABLE(QSYS2.LIBRARY_INFO(LIBRARY_NAME => 'JOBISQL')) L
QSYS2.LIBRARY_INFO renvoie une ligne pour la bibliothèque : nombre d'objets, taille totale en octets, et si cette taille est complète (LIBRARY_SIZE_COMPLETE à NO quand des objets sont verrouillés ou inaccessibles).
Le résultat sur un IBM i 7.5
Ce que l'IBM i a renvoyé le 01/10/2026 (1 ligne au plus) :
| OBJECT_COUNT Nombre d'objets | TAILLE_MO Taille (Mo) | LIBRARY_SIZE_COMPLETE Indicateur de taille de bibliothèque complète | LIBRARY_TYPE Type de bibliothèque | JOURNALED Indicateur de journalisation | JOURNAL_NAME Nom du journal | TEXT_DESCRIPTION Texte descriptif |
|---|---|---|---|---|---|---|
| 44 | 5.19 | YES | PROD | YES | QSQJRN | Demonstrations des services SQL de job-i.fr |
Notre bibliothèque de démonstration JOBISQL : 44 objets, 5 Mo, journalisée par QSQJRN.
Données anonymisées : les noms de système, de profils, de bibliothèques, de postes et les adresses IP ont été remplacés.
L'adapter à votre système
Pour toutes les bibliothèques utilisateur, joignez avec la liste des bibliothèques : … FROM TABLE(QSYS2.OBJECT_STATISTICS('*ALLUSR', 'LIB')) L, LATERAL (SELECT … FROM TABLE(QSYS2.LIBRARY_INFO(L.OBJNAME))). C'est long : à lancer en batch.