乙個觸發器的例子

2021-03-31 13:43:02 字數 741 閱讀 9326

create or replace trigger "usremhr".trg_sq_rule_insert

before insert on sq_rule_base

for each row

declare

temp_rule_id varchar2(10);

temp_rul_theme_id varchar2(10);

begin

begin

temp_rule_id := :new.rule_id;

temp_rul_theme_id := :new.rul_theme_id;

insert into sq_result_detail(result_id,result_rul_id,result_thedet_id,result_field_id)

select

to_char(sysdate,'yy')||to_char(sysdate,'mm')||trim(to_char(seq_sq_rule.nextval,'000000')),

temp_rule_id,the_id,sq_id

from sq_theme_detail,sq_table

where the_tablename=sq_tablename

and sq_fieldyon='y'

and theme_id=temp_rul_theme_id;

end;

end trg_sq_rule_insert;

乙個Oracle觸發器的例子

有乙個表,表名是xx,有abcd四個字段,正常情況下,abc abd這三個欄位都可以唯一確定一條記錄,按理應該做成唯一索引,但由於歷史原因,該錶存在重複資料,但要刪掉哪一條需要人工判斷,無法用語句批量刪除,於是唯一索引加不上。但為了保證以後資料的準確性,需要控制新插進去的記錄是唯一的。於是我寫了乙個...

SQLite的乙個觸發器的例子

sqlite3觸發器的實戰 你可以搜尋 sqlite 觸發器 或 sqlite 觸發器的sql語法 然後你應該能找到乙個pdf文件或其他樣式的檔案。它簡要講解了一些基本內容,如果你和我一樣什麼都不知道,可以先看一下它。觸發器分為 語句級觸發器 和 行級觸發器 語句級觸發器是指每執行一條dml語句,該...

乙個簡單MySQL觸發器例子

有這樣乙個需求,更新某張表的某個欄位時,要先判斷,如果新值比表中老值小,則將老值和新值相加,然後更新 否則正常更新。考慮用mysql的觸發器實現,更新時觸發。下面是具體的sql,一看便知。刪除觸發器 drop trigger trigger ads 建立觸發器 delimiter create tr...