Oracle 创建触发器时出错

Oracle 创建触发器时出错,oracle,triggers,oracle10g,Oracle,Triggers,Oracle10g,下面的触发器将为每个为特定列所做的插入更新表中其他列的值,但不知怎的,我得到了以下错误 ORA-04084:无法更改此触发器类型的新值 甚至update语句在触发器体中似乎也不起作用 create or replace trigger encode_trigger after insert on vulnerable_tags for each row declare var1 varchar2(20); var2 varchar2(40); begin var1 := :OLD

下面的触发器将为每个为特定列所做的插入更新表中其他列的值,但不知怎的,我得到了以下错误

ORA-04084:无法更改此触发器类型的新值

甚至update语句在触发器体中似乎也不起作用

create or replace trigger encode_trigger 
after insert on vulnerable_tags
for each row
declare 
  var1 varchar2(20);
  var2 varchar2(40);
begin
  var1 := :OLD.tag_name;
  var2 := Encode12(var1);
  :NEW.ascii_tags := var2;
end;
/

如果要更改列中的值,则需要在INSER或UPDATET之前使用
触发器,而不是在INSERT或UPDATE之后使用
触发器

create or replace trigger encode_trigger 
before insert on vulnerable_tags
for each row
declare 
var1 varchar2(20);
var2 varchar2(40);
begin
var1:= :OLD.tag_name;
var2:=Encode12(var1);
:NEW.ascii_tags:=var2;
end
出于特定原因,您是否需要在
之后添加