觸發(fā)語句 |
:old |
:new |
Insert |
所有字段都是空(null) |
將要插入的數(shù)據(jù) |
Update |
更新以前該行的值 |
更新后的值 |
delete |
刪除以前該行的值 |
所有字段都是空(null) |
示例2:確認(rèn)數(shù)據(jù)(檢查emp表中sal的修改值不低于原值)
SQL> create or replace trigger checkSal
before update of sal on emp
for each row
declare
begin
if :new.sal:old.sal then
raise_application_error(-20001,'更新后的薪水比更新前小');
end if;
end;
/
Trigger created
運(yùn)行后結(jié)果:
SQL> update emp set sal=260 where empno=7499;
update emp set sal=260 where empno=7499
ORA-20001: 更新后的薪水比更新前小
ORA-06512: 在 "SCOTT.CHECKSAL", line 4
ORA-04088: 觸發(fā)器 'SCOTT.CHECKSAL'執(zhí)行過程中出錯(cuò)
觸發(fā)器總結(jié)
觸發(fā)器可用于
• 數(shù)據(jù)確認(rèn)
• 實(shí)施復(fù)雜的安全性檢查
• 做審計(jì),跟蹤表上所做的數(shù)據(jù)操作等
查詢觸發(fā)器、過程及函數(shù)
• Select * from user_triggers;
• Select * from user_source;
標(biāo)簽:葫蘆島 酒泉 六安 宜春 泰安 淮南 海北 孝感
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Oracle中 關(guān)于數(shù)據(jù)庫存儲(chǔ)過程和存儲(chǔ)函數(shù)的使用》,本文關(guān)鍵詞 Oracle,中,關(guān)于,數(shù)據(jù)庫,存儲(chǔ),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。