У меня есть таблица (Meeting) с атрибутом типа даты (MeetDate) и другим атрибутом типа varchar2 (WorkWeek). Я пытаюсь сделать триггер After, чтобы заполнить поле WorkWeek на основе значения MeetDate, используя функцию to_char. Пробовал следующие коды отдельно, и они компилируются без ошибок, но когда я пытаюсь вставить строку с Null для WorkWeek, это дает мне ошибку «мутирующий триггер/функция может не видеть его». Что я здесь делаю неправильно? заранее спасибо за любую помощь.
--Code 1
Create or Replace Trigger Update_WorkWeek
After Insert On Meeting
For Each Row
Begin
Update Meeting
Set WorkWeek = (Select to_char(:new.MeetDate, 'YYYY IW') From Dual)
Where MeetID = :new.MeetID;
End;
/
show Errors;
--Code 2
Create or Replace Trigger Update_WorkWeek
After Insert On Meeting
For Each Row
Begin
if :New.WorkWeek is Null then
Update Meeting
Set WorkWeek = (Select to_char(:new.MeetDate, 'YYYY IW') From Dual)
Where MeetID = :new.MeetID;
End if;
End;
/
show Errors;