1. 程式人生 > >Oracle 觸發器的編寫-----》假設需求要在插入資料時,觸發觸發器生成附件ID (假如Excel動態匯入資料,列表欄再上傳附件,因此要插入資料時生成附件ID)

Oracle 觸發器的編寫-----》假設需求要在插入資料時,觸發觸發器生成附件ID (假如Excel動態匯入資料,列表欄再上傳附件,因此要插入資料時生成附件ID)

  /********************************************************************
  功能名稱:  GET_BAIHOO_ID_BY_NAME
  功能描述:  觸發觸發器生成附件ID
  入口程式:  無
  設 計 人:baihoo.chen
  修改記錄:
  版本號    編輯記錄        編輯人    修改描述
  1.0.0     2018/5/11      baiHoo      新建
  ********************************************************************/

create or replace trigger Ins_Trig_Gen_Attach
   before insert
   on BAIHOO_H for each row
   declare
   PRAGMA AUTONOMOUS_TRANSACTION; -- 自治事務開始
    begin
      if :new.attachment is null and :new.model_id is not null
        then
        :new.attachment

:= sys_guid();
        dbms_output.put_line(:new.category||' 存在的證據'); 
      else
        dbms_output.put_line('未插入存在的證據');   
      end if;
     COMMIT;
     end Ins_Trig_Gen_Attach;

紅色標註的是表

綠色標註的是欄位