Un handler SPL est un ensemble d'instructions
qui s'exécutent quand une
condition se manifeste. La figure 3
montre un exemple de déclaration de
handler. Chaque handler comporte
trois éléments importants :
• Type de handler (Continue, Exit ou
Undo)
• Conditions du handler (une condition
générale ou une ou plusieurs
Handlers de SPL
conditions spécifiques)
• Actions du handler (le code exécutable dans le handler)
Plusieurs comportements importants
de SPL sont liés aux handlers. Les
handlers ne sont jamais appelés quand une instruction s’exécute avec succès
(c’est-à -dire que SqlState est à « 000
00 »).
Quand une instruction cause une
condition d’exception, s’il n’existe pas de handler correspondant, la routine
sort immédiatement et renvoie une exception
à l’appelant de la routine.
Donc, les handlers sont le seul mécanisme
SPL permettant d’intercepter
des exceptions. On ne peut pas détecter
une exception en faisant simplement
suivre une instruction (un
Update, par exemple) d’un test If appliqué
à SqlState, comme on le ferait
avec un SQL imbriqué dans un programme
HLL.
La situation avec les conditions
warning et not found se situe quelque
part entre l’exécution réussie et les exceptions.
S’il existe un handler correspondant
pour une condition warning
ou not found, il est exécuté. Sinon, la
condition warning ou not found est
ignorée. Si aucun handler n’est exécuté,
vous pouvez tester SqlState immédiatement
après une instruction,
pour déterminer l’état de bonne exécution
de l’instruction. (Mais il est préférable
de copier immédiatement
SqlState dans une variable de travail
puis de tester celle-ci).
Une fois exécuté, le handler réinitialise
toujours SqlState. Si vous voulez
travailler avec le SqlState d’une instruction
après l’exécution d’un handler, le
code de ce dernier doit copier SqlState
dans une variable de travail, comme le
montre l’exemple de la figure 3.
Un handler peut contenir la plupart
des types d’instructions SPL, y
compris les instructions composées
imbriquées. Toutefois, vous ne pouvez
pas utiliser GoTo ou Leave pour sortir
d’un handler. Une instruction composée
à l’intérieur d’un handler peut ellemême
contenir des handlers. Si un
handler contient du code pouvant
échouer (par exemple, une instruction
Insert pour journaliser des informations
d’erreur dans une table), vous
devez protéger ce code en définissant
le(s) handler(s) imbriqué(s) approprié(
s) dans ce handler.
Téléchargez cette ressource
Microsoft 365 Tenant Resilience
Face aux failles de résilience des tenants M365 (configurations, privilèges, sauvegarde). Découvrez 5 piliers pour durcir, segmenter et surveiller vos environnements afin de limiter l’impact des attaques. Prioriser vos chantiers cyber et améliorer la résilience de vos tenants Microsoft 365.
Les articles les plus consultés
- Afficher les icônes cachées dans la barre de notification
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- Activer la mise en veille prolongée dans Windows 10
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Cybersécurité Active Directory et les attaques de nouvelle génération
Les plus consultés sur iTPro.fr
- Akamai Technologies déploie sa stratégie de protection en ligne
- Baromètre channel IT : fin du cuivre, essor de UCaaS et premiers pas vers l’IA
- Fraude par identité synthétique : comment l’IA peut redonner confiance aux entreprises et à leurs clients
- VirtualBrowser protège la navigation web à la source
Articles les + lus
Femmes et métiers de la tech : une attractivité réelle freinée par des stéréotypes persistants
Moderniser le développement logiciel : de la fragmentation à l’intégration
Analyse Patch Tuesday Mars 2026
Une nouvelle ère de la modernisation du mainframe
Communes, entreprises ? Non, face au RGAA 5, l’IA seule ne rendra pas vos sites accessibles
À la une de la chaîne Tech
- Femmes et métiers de la tech : une attractivité réelle freinée par des stéréotypes persistants
- Moderniser le développement logiciel : de la fragmentation à l’intégration
- Analyse Patch Tuesday Mars 2026
- Une nouvelle ère de la modernisation du mainframe
- Communes, entreprises ? Non, face au RGAA 5, l’IA seule ne rendra pas vos sites accessibles
