Ошибка оператора UPDATE после компиляции триггера - PullRequest
0 голосов
/ 07 марта 2020

Этот формат работает для другой программы, и я не могу дать значения вручную в операторе вставки.

Удалить таблицу emp_changing_sal; CREATE TABLE emp_changing_sal (empid NUMBER, new_sal NUMBER, UPDATED_TIME DATE, UPDATED_BY VARCHAR2 (15)); DROP триггер emp_change; CREATE TRIGGER emp_change ПОСЛЕ ОБНОВЛЕНИЯ ЗАРАБОТНОЙ ПЛАТЫ НА РАБОТНИКАХ ДЛЯ КАЖДОЙ СТРОКИ НАЧИНАЕТСЯ ВСТАВИТЬ emp_changing_sal (empid, new_sal, UPDATED_TIME, UPDATED_BY) VALUES (: NEW.empid,: NEW.salary, SYSDATE, USER); КОНЕЦ; / ОБНОВЛЕНИЕ сотрудников УСТАНОВИТЬ оклад = оклад + 200 ГДЕ employee_id = 105;

Error:
Error starting at line : 123 in command -
UPDATE employees SET salary = salary + 200 WHERE employee_id = 105
Error at Command Line : 123 Column : 8
Error report -
SQL Error: ORA-04098: trigger 'APATE269.CHANGE_TRIG' is invalid and failed re-validation
04098. 00000 -  "trigger '%s.%s' is invalid and failed re-validation"
*Cause:    A trigger was attempted to be retrieved for execution and was
           found to be invalid.  This also means that compilation/authorization
           failed for the trigger.
*Action:   Options are to resolve the compilation/authorization errors,
           disable the trigger, or drop the trigger.
...