> Tech > Parlez-moi

Parlez-moi

Tech - Par iTPro - Publié le 24 juin 2010
email

La seconde différence majeure entre les déclencheurs, les procédures stockées et les UDF réside dans leur manière de traiter les paramètres. Comme un programme déclencheur ne peut pas envoyer ou recevoir des paramètres explicitement, les développeurs ne maîtrisent pas l'information qui est mise à  disposition d'un programme déclencheur. Cependant, les

Parlez-moi

programmes déclencheurs peuvent
accéder aux images d’enregistrement
pour l’événement base de données qui
a activé le déclencheur. Les déclencheurs
update reçoivent une image
d’enregistrement avant et après, tandis
que les déclencheurs insert et delete
n’ont qu’une image après (insert) ou
une image avant (delete). L’information
dont dispose un déclencheur
contient aussi quelques détails à  propos
de la transaction qui a lancé le déclencheur.
Comme un déclencheur ne
peut ni recevoir ni envoyer des paramètres
directement, si un programme
déclencheur a besoin de communiquer
avec l’application qui l’a activé, il
doit recourir à  un mécanisme externe
du genre message, file d’attente de
données ou zone de données.
En matière de traitement des paramètres,
les procédures stockées sont
la plus polyvalente des trois techniques
couvertes ici. Une procédure
stockée peut accepter plusieurs paramètres
d’entrée et renvoyer plusieurs
paramètres de sortie, y compris des
jeux de résultats multiples. Le mécanisme
chargé de transmettre des paramètres
à  une procédure stockée dépend
de l’interface utilisée pour
appeler la procédure stockée. Ainsi, un
appel provenant d’un programme RPG
utilisant SQL imbriqué sera quelque
peu différent d’un appel de procédure
stockée JDBC.
Les UDF peuvent accepter des paramètres
d’entrée et renvoyer une valeur.
Les paramètres d’entrée sont mis
entre parenthèses immédiatement après l’UDF, et on peut utiliser une clause AS dans l’instruction
SQL pour extraire la valeur de renvoi, comme l’exemple
précédent le montre. La valeur de renvoi des UDF scalaires
est une variable unique, pour les UDF table, la valeur de renvoi
est un jeu de résultats. Selon l’UDF et la façon dont elle
est invoquée, on pourrait avoir une valeur de renvoi unique
(c’est-à -dire une valeur résumée) ou une valeur de renvoi
pour chaque ligne traitée par l’instruction SQL.
Généralement, on choisit entre les trois techniques – déclencheurs,
procédures stockées ou UDF – en fonction des
critères suivants : comment la fonction est appelée, les types
de paramètres requis, et l’environnement d’où la fonction
sera appelée.

Téléchargez gratuitement cette ressource

*** SMART DSI *** VERSION NUMÉRIQUE

*** SMART DSI *** VERSION NUMÉRIQUE

Découvrez SMART DSI, la nouvelle revue du Décideur IT en version numérique. Analyses et dossiers experts pour les acteurs de la transformation numérique de l'entreprise, Gagnez en compétences et expertise IT Professionnelle avec le contenu éditorial premium de SMART DSI.

Tech - Par iTPro - Publié le 24 juin 2010