Page 1 sur 1
Trigger SQL
Posté : dim. 23 août 2020, 10:46:19
par monthi
Bonjour
est il possible de connaitre le nom du programme qui a effectué l'opération sur la base de donnée comme on peut le faire avec un trigger RPG.
J'ai essayé en utilisant une procédure stockée basée sur la fonction quiappel trouvé sur le forum mais je n'obtient jamais le bon nom de programme.
Y a t'il un autre solution?
Cdlt
Re: Trigger SQL
Posté : lun. 24 août 2020, 07:52:34
par cmasse
je ne vois pas bien le contexte ?
Re: Trigger SQL
Posté : lun. 24 août 2020, 08:47:40
par nbonnet
Via la journalisation ?
Re: Trigger SQL
Posté : lun. 24 août 2020, 09:01:18
par vazymimil
Bonjour,
avec STACK_INFO c'est possible, par exemple
Code : Tout sélectionner
select
program_name
from
table(QSYS2.STACK_INFO('*')) A
where
program_name is not null
and (program_library_name not like 'Q%'
or program_name in ('QZDASOINIT', 'QSQIMAIN'))
order by ordinal_position desc
limit 1;
Re: Trigger SQL
Posté : lun. 24 août 2020, 11:01:04
par monthi
bonjour à tous
on utilise les triggers pour historiser les opération sur la base de donnée pour certain fichiers sensibles.
on historise le type d'opération (creation, modification suppression), le programme a l'origine de l'opération, l'utilsateur ainsi que certaines donnée du fichier a pister.
Jusqu'à présent on utilise des triggers rpgle.
je voulais voir comment faire la même chose en trigger SQL mais je n'arrive pas a recuper le nom du programme.
La solution de Vasymimil me retourne le nom du trigger.
Cdlt
Re: Trigger SQL
Posté : lun. 24 août 2020, 17:44:41
par vazymimil
Alors quelque chose comme ça :
Code : Tout sélectionner
select
program_library_name,
program_name,
procedure_name
from
(
select
program_library_name, program_name, procedure_name,
row_number() over(order by ordinal_position desc) pos
from
table(QSYS2.STACK_INFO('*')) A
where
program_name is not null
and (program_library_name not like 'Q%'
or program_name in ('QZDASOINIT', 'QSQIMAIN', 'QSQXCUTE'))
)
where
pos = 3;
Re: Trigger SQL
Posté : lun. 24 août 2020, 18:09:55
par monthi
Bonsoir Vasymimil
Cela semble fonctionné.
Merci beaucoup.
Cdlt
Re: Trigger SQL
Posté : mar. 25 août 2020, 11:47:44
par monthi
Bonjour
j'ai rajouter les programme suivant 'QCPGENIO', 'QDZXDBI' car j'avais des plantages lors de l'utilisation de cpyf et de DFU.
Cdlt