我寫的乙個觸發器的小例子,已經測試通過
表a和a_active結構相似都有如下字段
id name land_no
create or replace trigger t_a
before insert or update or delete on a
for each row
declare
pbcount number;
begin
select count(land_no) into pbcount from a_active where land_no = :new.land_no;
if inserting or updating then
if pbcount<=0 then
insert into a_active (id,name,land_no) values (:new.id,:new.name,:new.land_no);
else
update a_active
set id = :new.id,
name = :new.name ,
where land_no = :new.land_no;
end if;
end if;
if deleting then
delete from a_active where land_no = :old.land_no;
end if;
end;
功能就是a表插入資料時 ,在a_active中查詢,如果存在則更新,不存在則插入。
當a 表資料更新時,a_active也更新
當a表刪除記錄時,a_active也將相應記錄刪除
乙個觸發器的例子
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 var...
乙個Oracle觸發器的例子
有乙個表,表名是xx,有abcd四個字段,正常情況下,abc abd這三個欄位都可以唯一確定一條記錄,按理應該做成唯一索引,但由於歷史原因,該錶存在重複資料,但要刪掉哪一條需要人工判斷,無法用語句批量刪除,於是唯一索引加不上。但為了保證以後資料的準確性,需要控制新插進去的記錄是唯一的。於是我寫了乙個...
SQLite的乙個觸發器的例子
sqlite3觸發器的實戰 你可以搜尋 sqlite 觸發器 或 sqlite 觸發器的sql語法 然後你應該能找到乙個pdf文件或其他樣式的檔案。它簡要講解了一些基本內容,如果你和我一樣什麼都不知道,可以先看一下它。觸發器分為 語句級觸發器 和 行級觸發器 語句級觸發器是指每執行一條dml語句,該...