Najpierw musisz przeczytać o wyzwalaczach, mutujących błędach tabeli i wyzwalaczach złożonych:http://docs.oracle.com/cd/E11882_01/appdev.112/e25519/triggers.htm#LNPLS2005
Twój wyzwalacz jest PO ZAKTUALIZOWANIU LUB WSTAWIENIU LUB USUNIĘCIU. Oznacza, że uruchomienie instrukcji UPDATE OR INSERT OR DELETE dla tej tabeli spowoduje uruchomienie wyzwalacza. Ale próbujesz ponownie zaktualizować tę samą tabelę w wyzwalaczu, co jest kompletne. zło. To dlatego otrzymujesz błąd. Nie możesz modyfikować tej samej tabeli, na której uruchamia się wyzwalacz. Celem wyzwalacza jest automatyczne uruchamianie, gdy tabela jest aktualizowana, wstawiana lub usuwana w twoim przypadku. Potrzebujesz jakiejś procedury, a nie wyzwalacza.