Powód, dla którego działa pod SYS jest to, że jest to specjalne konto uprzywilejowane. Musisz utworzyć nowe poświadczenia i zmapować je do pracy
Rozwiązaniem byłoby utworzenie poświadczenia z DBMS_SCHEDULER.CREATE_CREDENTIAL wraz z kontem systemu operacyjnego, które ma wystarczające uprawnienia i przypisz nowe poświadczenia do swojej pracy.
Szczerze mówiąc, kwestia wyzwalacza jeszcze nie wiem.
Edytuj - rozwiązanie oparte na narzędziu podtransakcyjnym Oracle
Po aktualizacji OP i reakcji na komentarze:
W oparciu o przepływ pracy myślę, że lepiej jest użyć wewnętrznego powiadomienia Oracle, aby wykonać responsywne rewizja. Myślę, że próba włamania się do dziennika zdarzeń systemu Windows za pomocą zewnętrznej aplikacji wprowadza kolejną niepotrzebną warstwę złożoności.
Stworzyłbym tabelę w bazie danych, w której przechowywałbym wszystkie zdarzenia, a na górze tej tabeli utworzyłbym zadanie z powiadomieniami (SMS, poczta itp.), które byłyby uruchamiane w przypadku wystąpienia jakiejkolwiek zmiany w tabeli dziennika.
Aby użyć wyzwalaczy, gdy wystąpi błąd, należy użyć PRAGMA autonomous_transaction
z głównego zakresu (pozwala na wykonanie podtransakcji). Umożliwi to zatwierdzenie dowolnego DML
możesz mieć, ale cofnij resztę.