觸發器定義:
觸發器在資料庫中獨立於物件儲存,與統計函式和儲存過程需要使用者主動呼叫不同,由事件驅動且自動隱式執行,觸發器不接受引數。
分為語句及觸發器(表級觸發器)或行級觸發器;
dml:select、update、insert、delete(主要作用於對資料庫中資料的增刪查改的操作)
ddl:create、alter、drop等(主要作用於定義或改變資料表結構,資料型別與資料表之間的連線或約束等初始化工作,多用於建表和初始化)
語句級觸發器對每個dml語句只執行一次
end if;
end;
/行級觸發器對dml語句而言,只要有一條資料被影響就會被觸發一次
:new 和 :old 使用方法和意義:
:new 只出現在 insert 和 update,而 :old 只出現在 update 和 delete 中。new代表新新增的資料而old代表原先的資料
可通過行級觸發器是 update 的級聯操作
create or replace trigger dept_trigger
before update of deptno
on dept
for each row
begin
update emp set deptno = :new.deptno where deptno = :old.deptno ;
end;
/
資料庫觸發器
觸發器是一種特殊型別的儲存過程,它不同於我們前面介紹過的儲存過程。觸發器主要是通過事件進行觸發而被執行的,而儲存過程可以通過儲存過程名字而 被直接呼叫。當對某一表進行諸如update insert delete 這些操作時,sql server 就會自動執行觸發器所定義的sql 語句,從而確保對資料...
資料庫觸發器
最近做了個觸發器的例子 create trigger tru user on user for update asif update status begin update user set stopflag 1 from inserted where user.userid inserted.us...
資料庫 觸發器
觸發器的概念 是使用者定義在關係表上的一類有事件驅動的特殊過程。一旦定義,任何對錶的增刪改操作均有伺服器自動啟用相應的觸發器,在dbms核心層進行集中的完整性控制。類似於約束,但比約束更靈活。觸發器的分類 dml觸發器 dml data manipulation language 觸發器是當資料庫伺...