Service SQL IBM i (AS/400) · Fonction table
QSYS2.OPEN_FILES
Fichiers ouverts par un travail
Liste les fichiers ouverts par un travail avec le nombre de lectures et d'écritures : l'équivalent SQL de l'option 14 de WRKJOB.
À quoi ça sert
Cette fonction de table renvoie les fichiers actuellement ouverts par un travail, désigné par son nom qualifié (JOB_NAME, de la forme numéro/utilisateur/nom). Pour chaque fichier : bibliothèque, nom, type (FILE_TYPE), membre, unité, format d'enregistrement, groupe d'activation, option d'ouverture, ouvertures partagées et compteurs de lectures, d'écritures et d'autres opérations, avec le numéro d'enregistrement relatif.
On s'en sert pour comprendre ce qu'un travail lent ou bloqué est en train de lire. Le SQL permet de filtrer sur le type de fichier, comme dans l'exemple d'IBM qui ne garde que les fichiers physiques et logiques.
Résultat réel sur un IBM i 7.5
Ce que nous avons exécuté :
SELECT * FROM TABLE(QSYS2.OPEN_FILES('*')) WHERE FILE_TYPE IN ('PF', 'LF')
Ce que l'IBM i a renvoyé le 01/10/2026 (5 lignes au plus) :
| LIBRARY_NAME Nom de la bibliothèque | FILE_NAME Nom du fichier | FILE_TYPE Type de fichier | MEMBER_NAME Nom du membre | DEVICE_NAME Nom de l'unité | RECORD_FORMAT Format d'enregistrement | ACTIVATION_GROUP_NAME Nom du groupe d'activation | ACTIVATION_GROUP_NUMBER Numéro du groupe d'activation | THREAD_ID Identifiant de l'unité d'exécution | OPEN_OPTION Option d'ouverture | SHARED_OPENS Nombre d'ouvertures partagées | WRITE_COUNT Nombre d'écritures | READ_COUNT Nombre de lectures | WRITE_READ_COUNT Nombre d'écritures-lectures | OTHER_IO_COUNT Nombre d'autres opérations d'entrée-sortie | RELATIVE_RECORD_NUMBER Numéro d'enregistrement relatif | IASP_NAME Nom de l'ASP indépendant | IASP_NUMBER Numéro de l'ASP indépendant |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| QSYS2 | SYSROUTINE | PF | SYSROUTINE | NULL | SYSROUTINE | *DFTACTGRP | 2 | 125 | INPUT | NULL | 0 | 106 | 0 | 0 | 20 | *SYSBAS | 1 |
| QSYS2 | QASQVRSL | LF | QASQVRSL | NULL | SYSVARS | *DFTACTGRP | 2 | 132 | INPUT | NULL | 0 | 11 | 0 | 0 | 34 | *SYSBAS | 1 |
| QSYS2 | QASQVRSS | LF | QASQVRSS | NULL | SYSVARS | *DFTACTGRP | 2 | 132 | INPUT | NULL | 0 | 102 | 0 | 0 | 35 | *SYSBAS | 1 |
| QSYS2 | QSQPTABL | PF | QSQPTABL | NULL | FORMAT0001 | *DFTACTGRP | 2 | 132 | INPUT | NULL | 0 | 35 | 0 | 0 | NULL | NULL | NULL |
| QSYS2 | QSQPTABL | PF | QSQPTABL | NULL | FORMAT0001 | *DFTACTGRP | 2 | 132 | INPUT | NULL | 0 | 35 | 0 | 0 | NULL | NULL | 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
Lister tous les fichiers de base de données ouverts par le travail 429467/QUSER/QZDASOINIT.
-- Description: List all the database files open for job 429467/QUSER/QZDASOINIT.
SELECT * FROM TABLE(QSYS2.OPEN_FILES('429467/QUSER/QZDASOINIT'))
WHERE FILE_TYPE IN ('PF', 'LF');
Paramètres
| Paramètre | Type | Par défaut | Signification |
|---|---|---|---|
JOB_NAME |
VARCHAR(28) | obligatoire | Nom du travail |
Colonnes renvoyées (18)
Afficher les 18 colonnes
| Colonne | Type | Signification |
|---|---|---|
LIBRARY_NAME |
VARCHAR(10) | Nom de la bibliothèque |
FILE_NAME |
VARCHAR(10) | Nom du fichier |
FILE_TYPE |
VARCHAR(7) | Type de fichier |
MEMBER_NAME |
VARCHAR(10) | Nom du membre |
DEVICE_NAME |
VARCHAR(10) | Nom de l'unité |
RECORD_FORMAT |
VARCHAR(10) | Format d'enregistrement |
ACTIVATION_GROUP_NAME |
VARCHAR(10) | Nom du groupe d'activation |
ACTIVATION_GROUP_NUMBER |
INTEGER | Numéro du groupe d'activation |
THREAD_ID |
BIGINT | Identifiant de l'unité d'exécution |
OPEN_OPTION |
VARCHAR(6) | Option d'ouverture |
SHARED_OPENS |
BIGINT | Nombre d'ouvertures partagées |
WRITE_COUNT |
BIGINT | Nombre d'écritures |
READ_COUNT |
BIGINT | Nombre de lectures |
WRITE_READ_COUNT |
BIGINT | Nombre d'écritures-lectures |
OTHER_IO_COUNT |
BIGINT | Nombre d'autres opérations d'entrée-sortie |
RELATIVE_RECORD_NUMBER |
BIGINT | Numéro d'enregistrement relatif |
IASP_NAME |
VARCHAR(10) | Nom de l'ASP indépendant |
IASP_NUMBER |
INTEGER | Numéro de l'ASP indépendant |