oracle 触发器:条件判断自动执行某些任务,不仅仅用于自增id

来源:互联网 发布:日向日足 知乎 编辑:程序博客网 时间:2024/05/21 11:25

实现功能:当某张表写入数据时,同时将处理后的数据写入另一张表


create or replace trigger TG_sale_warehousein_gh afterinsert  ON   t_sale_warehousein  FOR EACH ROWdeclare yes number;begin  select count(*) into yes from t_sale_warehousein2 t5 where t5.product_code=:NEW.product_code and to_char(t5.warehousein_confirm_date,'yyyy-mm-dd')=to_char(:NEW.warehousein_confirm_date,'yyyy-mm-dd');  if(yes>0) then   update t_sale_warehousein2 set   --product_code=:NEW.product_code,   --product_name=:NEW.product_name,   --plate_code=:NEW.plate_code,   --grade=:NEW.grade,   warehousein_num=warehousein_num+:NEW.warehousein_num,   warehousein_weight=warehousein_weight+:NEW.warehousein_weight   --warehousein_confirm_date=:NEW.warehousein_confirm_date   where product_code=:NEW.product_code and to_char(warehousein_confirm_date,'yyyy-mm-dd')=to_char(:NEW.warehousein_confirm_date,'yyyy-mm-dd');  end if;  if(yes=0) then   insert into t_sale_warehousein2(product_code,product_name,plate_code,grade,warehousein_num,warehousein_weight,warehousein_confirm_date)    values(:NEW.product_code,:NEW.product_name,:NEW.plate_code,:NEW.grade,:NEW.warehousein_num,:NEW.warehousein_weight,:NEW.warehousein_confirm_date); end if;end;


0 0
原创粉丝点击