Service SQL IBM i (AS/400) · Variable globale
SYSIBMADM.QIBM_SELF_BY_DAYS
Durée de conservation des erreurs SQL (SELF)
Variable globale qui fixe, en jours, la durée de conservation des lignes de la table SQL_ERRORT alimentée par SELF, le journal d'erreurs SQL de Db2 for i.
À quoi ça sert
SYSIBMADM.QIBM_SELF_BY_DAYS est une variable globale de type entier. Elle règle le nombre de jours pendant lesquels les lignes de la table SQL_ERRORT sont conservées. Cette table est alimentée par SELF (SQL Error Logging Facility), qui enregistre le détail des instructions SQL en erreur.
On ne l'interroge pas comme un service : on la crée ou on la remplace avec CREATE OR REPLACE VARIABLE en lui donnant une valeur par défaut. L'exemple fourni par IBM la fixe à 30 jours. Elle sert aux développeurs et aux exploitants qui veulent garder plus ou moins d'historique d'erreurs SQL selon la place disponible.
L'avantage du SQL est de pouvoir ajuster cette rétention par un simple ordre, sans passer par une commande CL, et de l'inclure dans un script de configuration rejouable.
Résultat réel sur un IBM i 7.5
Ce que nous avons exécuté :
VALUES SYSIBMADM.QIBM_SELF_BY_DAYS
Ce que l'IBM i a renvoyé le 01/10/2026 (1 ligne au plus) :
| 00001 |
|---|
| 365 |
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
Modifier la durée de conservation par défaut des lignes de la table SQL_ERRORT pour la porter à 30 jours.
-- Description: Change the default retention time for rows in the SQL_ERRORT table to 30 days.
CREATE OR REPLACE VARIABLE SYSIBMADM.QIBM_SELF_BY_DAYS
INTEGER DEFAULT 30;
Bon à savoir
Cette variable règle la durée de conservation, tandis que SYSIBMADM.SELFCODES choisit les erreurs capturées. Consultez ce qui a été enregistré avec QSYS2.SQL_ERROR_LOG.