Я создал простую таблицу с именем test1, как показано ниже:
Я собираюсь обновить столбец END_SESSION где вы можете видеть нулевое значение, поэтому оператор обновления должен быть таким:
UPDATE test1 SET end_session = 3500, где end_session имеет значение null
Однако идея состоит в том, чтобы избежать условия где в операторе UPDATE и создать триггер, чтобы указать, какая ячейка должна быть обновлена (должно быть нулевым). Я создал триггер:
create or replace trigger updateEND_SESSION
before update of end_session on test1
for each row
declare
lastROW number;
begin
select max(NUMER_ID) into lastROW
from TEST1;
UPDATE TEST1
SET END_SESSION = :NEW.END_SESSION
WHERE NUMER_ID = lastROW;
end;
, но я вижу следующую ошибку:
SQL Ошибка: ORA-04098: триггер «MMDMANAGER.UPDATEENDSESSION» недействителен и не прошел повторную проверку
Кто-нибудь знает, как создать такой триггер?