SQL : historique des commandes

Pour sauvegarder les commandes SQL que vous avez passées dans une session, vous pouvez dans votre session faire F13 puis l'option 4.

Mais comment faire si vous voulez voir celui d'un autre utilisateur ou si vous n'avez pas sauvegardé.

Vous pouvez utiliser la commande DMPSYSOBJ. Cette commande est utilisée principalement pour l'analyse du problème, elle permet de créer un spool qui va contenir le code MI des objets système. 

Pour récupérer les commandes SQL la syntaxe est la suivante (toutes les sessions de l'utilisateur) :

DMPSYSOBJ OBJ(ISQLSTnomprofil*) CONTEXT(QRECOVERY) TYPE(19) SUBTYPE(EE) 

Dans le spool, les informations qui vous intéressent se trouvent de la position 88 sur une longueur de 32.

Vous pouvez par exemple faire un cpysplf dans une table de 132 puis un select sql sur cette table

SELECT substr(pf132, 88, 32) as data_sql FROM pf132 

Vous pourrez décrypter les commandes SQL exécutées et leur résultat.