Service SQL IBM i (AS/400) · Procédure
QSYS2.FIND_AND_CANCEL_QSQSRVR_SQL
Annuler le SQL des travaux serveur d'un travail
Retrouve les travaux QSQSRVR (mode serveur SQL) utilisés par un travail applicatif et annule leurs instructions SQL actives.
À quoi ça sert
Cette procédure part d'un travail applicatif (par exemple un travail d'un serveur d'applications ou d'une connexion distante) et recherche tous les travaux du mode serveur SQL, les travaux QSQSRVR, qui travaillent pour lui. Elle annule ensuite les instructions SQL qui sont en cours d'exécution dans ces travaux.
Elle sert en exploitation quand une requête déraille et que l'on veut l'arrêter sans arrêter tout le travail applicatif : l'application garde sa connexion, seule l'instruction en cours est interrompue. Le seul paramètre, JOB_NAME, est le nom qualifié du travail applicatif, au format numéro/utilisateur/nom.
Pour voir d'abord ce qui sera touché, on commence par la procédure sœur QSYS2.FIND_QSQSRVR_JOBS, qui ne fait que lister les travaux serveurs sans rien annuler.
Résultat réel sur un IBM i 7.5
Procédure non exécutée sur notre IBM i de test : elle agit sur la configuration du système ou sur d'autres travaux.
L'exemple d'IBM
Trouver tous les travaux du mode serveur SQL d'un travail applicatif donné et annuler les instructions SQL actives.
-- Description: Find all of the SQL Server Mode jobs for a specific
-- application job, and cancel any active SQL statements
CALL QSYS2.FIND_AND_CANCEL_QSQSRVR_SQL('242362/SCOTTF/QPADEV000F');
Bon à savoir
La procédure annule des requêtes en cours, y compris des mises à jour : l'application peut recevoir une erreur SQL en retour. Lance d'abord FIND_QSQSRVR_JOBS avec le même nom de travail pour vérifier la cible.
Paramètres
| Paramètre | Type | Par défaut | Signification |
|---|---|---|---|
JOB_NAME |
VARCHAR(28) | obligatoire | Nom du travail |