Bonjour,
J'ai besoin de créer un trigger dont le comportement sera différent selon une information de contexte.
Ce contexte peut-être différent pour deux batchs qui tournent en //.
Par exemple, dans une PS, je suis en contexte "debug", et dans ce cas, je dois alimenter une table de log en fonction des actions effectuées par le trigger.
Mais dans une autre PS, je suis en mode "release", et dans ce cas, le trigger va se contenter de s'exécuter sans remplir la table de log.
J'ai trouvé qu'on pouvait alimenter une variable "CONTEXT_INFO" et la réutiliser depuis un trigger.
Mais les articles et les exemple de la MSDN ne sont pas très clairs : je veux être certain que si je lance mes deux procédures en même temps, le trigger se comportera comme il doit.
Est-ce qu'il suffit dans la première PS de faire :
Et dans la seconde :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 set context_info = 'debug'; insert into matablequideclencheletrigger; set context_info = null;
Ou si cette variable se comportera comme une variable de session et ne sera pas isolée par scope ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 set context_info = 'release'; insert into matablequideclencheletrigger; set context_info = null;








Répondre avec citation
Partager