De reden waarom het werkt onder SYS is dat het een speciaal bevoorrecht account is. U moet een nieuwe referentie maken en deze toewijzen aan de taak
De oplossing zou zijn om een referentie te maken met DBMS_SCHEDULER.CREATE_CREDENTIAL samen met een OS-account dat voldoende privileges heeft en wijs deze nieuwe referentie toe aan uw taak.
Om eerlijk te zijn weet ik het probleem nog niet.
Bewerken - oplossing gebaseerd op de subtransactiefaciliteit van Oracle
Na OP-update en reactie op opmerkingen:
Op basis van de workflow denk ik dat het beter is om de interne melding van Oracle te gebruiken om de responsieve . te doen controleren. Ik denk dat het proberen jezelf te hacken in het Windows-gebeurtenislogboek via een externe applicatie een nieuwe onnodige laag van complexiteit met zich meebrengt.
Ik zou een tabel binnen DB maken waar ik alle gebeurtenissen zou opslaan en bovenop die tabel zou ik een taak maken met meldingen (sms, e-mail, enz.) Die zou worden uitgevoerd als er een wijziging in de logtabel optreedt.
Om triggers te gebruiken wanneer er een fout optreedt, moet u DML
. vastleggen misschien wel, maar doe de rest terug.