版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、關(guān)于觸發(fā)器的使用:(:new,:old用法用法)觸發(fā)器是數(shù)據(jù)庫發(fā)生某個操作時自動運行的一類的程序用于保持?jǐn)?shù)據(jù)的完整性或記錄數(shù)據(jù)庫操作信息方面觸發(fā)器不能夠被直接調(diào)用,只能夠在某些事件發(fā)生時被觸發(fā),也就是系統(tǒng)自動進行調(diào)用觸發(fā)器的構(gòu)建語法。create[replace]triggertrigger_namebefe|afterevent1[event2event3…]ontable_name[feachrow]beginstatement…e
2、ndevent通常是、或update等DML操作說明:Feachrow的意義是:在一次操作表的語句中,每操作成功一行就會觸發(fā)一次;不寫的話,表示是表級觸發(fā)器,則無論操作多少行,都只觸發(fā)一次;When條件的出現(xiàn)說明了,在DML操作的時候也許一定會觸發(fā)觸發(fā)器,但是觸發(fā)器不一定會做實際的工作,比如when后的條件不為真的時候,觸發(fā)器只是簡單地跳過了PLSQL塊.觸發(fā)器分為語句級觸發(fā)器和行級觸發(fā)器語句級觸發(fā)器是指每執(zhí)行一條DML語句,該觸發(fā)器就
3、執(zhí)行一次行級觸發(fā)器是指每個DML操作影響幾條記錄,就會觸發(fā)幾次(feachrow)行級觸發(fā)器中由于涉及到了每條記錄的數(shù)據(jù)變動,所以對于每條記錄的數(shù)據(jù)來說就有新值和舊值之分關(guān)鍵字::NEW和:OLD使用方法和意義,new只出現(xiàn)在和update時,old只出現(xiàn)在update和時。在時new表示新插入的行數(shù)據(jù),update時new表示要替換的新數(shù)據(jù)、old表示要被更改的原來的數(shù)據(jù)行,時old表示要被刪除的數(shù)據(jù)。示例(1)記錄操作數(shù)據(jù)庫信息方面
4、創(chuàng)建一個t_emp2_log表用于存儲用戶對emp2表所做的操作信息createtablet_emp2_log(t_idnumber(10)primarykey編號t_datedate修改日期t_uservar2(20)操作用戶actionvar(20)該用戶所做操作向emp_copy表copy新數(shù)據(jù)emp_copy可以存在相同的記錄createreplacetriggertr_emp_copyafterupdateonemp2feac
5、hrowbeginifingthenif:NEW.deptno=10:OLD.deptno=10thenintoemp_copyvalues(:NEW.empno:NEW.ename:NEW.job:NEW.mgr:NEW.hiredate:NEW.sal:NEW.sal:m:NEW.deptno)endifelsifupdatingthenif:OLD.deptno=10thenintoemp_copyvalues(:NEW.empn
6、o:NEW.ename:NEW.job:NEW.mgr:NEW.hiredate:NEW.sal:NEW.sal:m:NEW.deptno)endifendifend注意事項不管是after還是befe在update時,一定是在事務(wù)提交之后才會觸發(fā)觸發(fā)器befe和after的區(qū)別:befe:update可以對new進行修改。after:不能對new進行修改二者都不能對old進行修改createreplacetriggertri_emp2
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 主從rs觸發(fā)器,jk觸發(fā)器
- 基本rs觸發(fā)器和d觸發(fā)器
- d觸發(fā)器&雙d觸發(fā)器
- 實驗六 rs觸發(fā)器和d觸發(fā)器
- 觸發(fā)器語句
- 觸發(fā)器總結(jié)
- ppt觸發(fā)器
- d 觸發(fā)器
- 觸發(fā)器格式
- mysql觸發(fā)器
- 觸發(fā)器實例
- ddl觸發(fā)器
- 觸發(fā)器作業(yè)
- 觸發(fā)器語法
- 觸發(fā)器編程
- d觸發(fā)器原理-d觸發(fā)器電路圖
- 實驗四 基本rs觸發(fā)器和d觸發(fā)器2
- oracle觸發(fā)器3
- after insert觸發(fā)器
- d觸發(fā)器 教案
評論
0/150
提交評論