如何使用触发器根据条件更新整行?

时间:2011-11-25 08:23:47

标签: oracle plsql triggers plsqldeveloper

我想使用触发器根据条件更新整行。我正在尝试这种无效的情况

create or replace trigger cust_person_merge_view_t
 instead of update on CUST_MDM_PERSON_MERGE
 referencing new as new
 begin
      update mdm_person_tt 
      set :old.row = :new.row;
      where MDM_PARTY_ID =(select mdm_party_id from CUST_MDM_PERSON_MERGE where mdm_entity_id=:old.MDM_ENTITY_ID);
     if ( sql%rowcount = 0 )
       then
         raise_application_error
          ( -20001, 'Error updating the CUST_MDM_PERSON_MERGE view !!!' );
     end if;
 end;

1 个答案:

答案 0 :(得分:1)

您不能使用:old和:new引用整行。您必须逐列分配值。