Oracle触发器的语法详解
觸發器是一種特殊的存儲過程,下面是觸發器的詳細說明:
ORACLE 觸發器
ORACLE產生數據庫觸發器的語法為:
create [or replace] trigger 觸發器名 觸發時間 觸發事件
on 表名
[for each row]
pl/sql 語句
其中:
觸發器名:觸發器對象的名稱。由于觸發器是數據庫自動執行 的,因此該名稱只是一個名稱,沒有實質的用途。
觸發時間:指明觸發器何時執行,該值可取:
before---表示在數據庫動作之前觸發器執行;
after---表示在數據庫動作之后出發器執行。
觸發事件:指明哪些數據庫動作會觸發此觸發器:
insert:數據庫插入會觸發此觸發器;
update:數據庫修改會觸發此觸發器;
delete:數據庫刪除會觸發此觸發器。
表 名:數據庫觸發器所在的表。
for each row:對表的每一行觸發器執行一次。如果沒有這一選項,則只對整個表執行一次。
舉例:下面的觸發器在更新表auths之前觸發,目的是不允許在周末修改表:
create trigger auth_secure
before insert or update or delete file://對整表更新前觸發
on auths
begin
if(to_char(sysdate,'DY')='SUN'
RAISE_APPLICATION_ERROR(-20600,'不能在周末修改表auths');
( RAISE_APPLICATION_ERROR是函數,括弧內的,第一參數范圍在-20000~20999之間,第二個
參數是字符串,大小在2k,超過的話,系統自動截斷)
end if;
end
原文出自【比特網】,轉載請保留原文鏈接:http://soft.chinabyte.com/database/394/11720894.shtml
總結
以上是生活随笔為你收集整理的Oracle触发器的语法详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: accuweather(说一说accuw
- 下一篇: oracle树结构查询----conne