oracle 觸發器簡單例項

2021-06-02 13:56:36 字數 1156 閱讀 3916

語法格式:

create or replace trigger 觸發器名字 

before(/after) insert(delete ,update)---這個不能寫select

on 表--在那張表建立觸發器

for each row---行觸發器

declare --申明

變數申明塊

begin

執行語句塊

end

條件謂詞

inserting/deleting/updating 為什麼要用這個 oracle觸發器可以同時是插入或者更新,有時候我們需要知道是那個動作出發了 就要這幾個條件詞語。

oracle中 oid/new

oid的意思是針對資料庫存在的那條資料做處理,而new是新的(沒有的意思)不知道我說的很明白不?

例子:當使用者在t_sp表中插入一條資料 則插入使用者的資訊和時間。

t_sp資料指令碼:

create table t_sp

t_id varchar2(40) primary key,

t_name varchar2(40),

t_*** char(2) check(t_*** in('男','女'))

user表

create table t_user

t_name varchar(40),

t_date date

觸發器:

create or replace  trigger t_juor

before insert on t_sp

for each row

declare

username varchar2(40);

begin

select user into username from dual;

if(username='t_sp') then

insert into t_user values(username,:new.t_date);

else

dbms_output.put_line('對不起你沒有許可權');

end if;

end;

以上是自學個人看法,如果朋友們有更好的也可以教教我,謝謝。

Oracle 觸發器例項

1。先建立emp audit表 create table emp audit information varchar2 50 update today date 2。如果沒有emp表,請建立emp表 create table emp empno number 4 primary key,ename ...

oracle觸發器例項

觸發器定義 觸發器是特定事件出現的時候,自動執行的 塊。類似於儲存過程 但是使用者不能直接呼叫他們。觸發器功能 1 答應 限制對錶的修改 2 自動生成派生列,比如自增字段 3 強制資料一致性 4 提供審計和日誌記錄 5 防止無效的事務處理 6 啟用複雜的業務邏輯。觸發器的組成部分 1 觸發器名稱 2...

MySQL 觸發器簡單例項

mysql 觸發器簡單例項 語法 create trigger 觸發器名稱 觸發器必須有名字,最多64個字元,可能後面會附有分隔符.它和mysql中其他物件的命名方式基本相象.觸發器有執行的時間設定 可以設定為事件發生前或後。同樣也能設定觸發的事件 它們可以在執行insert update或dele...