Oracle觸發器中when語句的用法

2021-08-30 18:05:30 字數 602 閱讀 4906

案例:scott.emp表的銷售員工資只能增加,不能減少

**:create or replace trigger tr_emp_upd

before update of sal

on emp

for each row

--當更新銷售員時才觸發

when (old.job='salesman')

declare

begin

if(:new.sal<:old.sal) then

end if;

end;

運**況:

sql> update emp set sal=sal-1000 where job='manager';

3 rows updated

sql> update emp set sal=sal-1000 where job='salesman';

ora-20013: 銷售員工資不能降低!

ora-06512: 在"scott.tr_emp_upd", line 4

ora-04088: 觸發器 'scott.tr_emp_upd' 執行過程中出錯

Oracle觸發器中when語句的用法

案例 scott.emp表的銷售員工資只能增加,不能減少 create or replace trigger tr emp upd before update of sal on emp for each row 當更新銷售員時才觸發 when old.job salesman declare be...

oracle 資料庫 觸發器 trigger 語法

關鍵字 oracle 資料庫 觸發器 trigger 語法 語法規則 create or replace trigger 模式.觸發器名 before after insert delete update of 列名 on 表名 for each row when 條件 pl sql塊 說明 for...

Oracle中的觸發器

oracle 中的觸發器 在oracle 中,觸發器是一種特殊的子程式,它在插入 更新 刪除資料時自動執行。使用觸發器可以實現比較複雜的約束。pk fk uq ck df 都是單錶約束資料完整性。觸發器可以分為 insert 觸發器 update 觸發器 delete 觸發器。insert 觸發器在...