需求:一张表新增数据时,如果其中一个字段的值为空则将新增数据中的另一个字段值的值赋值给该字段。
例1:当mdm_store_query表新增数据时,如果DESC58为空,则将新增数据中code字段的值赋值给该字段。
create or replace trigger INSERT_CRM_STORE_query
before insert
on mdm_store_query
for each row
begin
if (:new.DESC58 is null or :new.DESC58='')
then
DBMS_OUTPUT.put_line('TESTCHUFAQI:'||:new.code);
:new.DESC58 := :new.code;
end if;
end;
例2:mdm_store_queryvalue表新增数据时,如果某个字段为空,则将新增数据中code字段的值赋值给该字段。
create or replace trigger INSERT_CRM_STORE_queryvalue
before insert
on mdm_store_queryvalue
for each row
declare
v_code mdm_store_query.code%type;
begin
select t.code into v_code from mdm_store_query t where t.codeid=:new.codeid;
if (:new.PROPERTYCODE = 'A030203' and :new.SPECIALITYCODE='A0302' and
(:new.PROPERTYVALUE is null or :new.PROPERTYVALUE=''))
then
:new.PROPERTYVALUE := v_code;
end if;
end;