版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、您還未登錄!|登錄|注冊(cè)|幫助 CSDN 首頁(yè) 資訊 論壇 博客 下載 搜索 更多 CTO 俱樂(lè)部 學(xué)生大本營(yíng) 培訓(xùn)充電 移動(dòng)開(kāi)發(fā) 軟件研發(fā) 云計(jì)算 程序員 ITeye TUP chinayuan 的專欄 目錄視圖 摘要視圖 訂閱 精創(chuàng)之作 《雷神的微軟平臺(tái)安全寶典》 誠(chéng)邀譯者 移動(dòng)業(yè)界領(lǐng)袖會(huì)議· 上海· 6.20 CSDN 博客
2、頻道“移動(dòng)開(kāi)發(fā)之我見(jiàn)”主題征文活動(dòng) 【分享季 1】 :網(wǎng)友推薦 130 個(gè)經(jīng)典資源,分享再贈(zèng)分! 數(shù)據(jù)庫(kù)觸發(fā)器 分類: 數(shù)據(jù)庫(kù) 2011-03-31 18:00 2889 人閱讀 評(píng)論(2) 收藏 舉報(bào) 觸發(fā)器 Oracle 觸發(fā)器 : 觸發(fā)器是特定事件出現(xiàn)的時(shí)候,自動(dòng)執(zhí)行的代碼塊。類似于存儲(chǔ)過(guò)程,但是用戶不能直接調(diào)用他們。 功能: 1 、 允許 / 限制對(duì)表的修改 2 、 自動(dòng)生成派生列,比如自增字段
3、 3 、 強(qiáng)制數(shù)據(jù)一致性 4 、 提供審計(jì)和日志記錄 5 、 防止無(wú)效的事務(wù)處理 6 、 啟用復(fù)雜的業(yè)務(wù)邏輯 開(kāi)始 : create trigger biufer_employees_department_id before insert or update of department_id on employees referencing old as old_value 觸發(fā): insert into empl
4、oyees (employee_id,last_name,first_name,hire_date,job_id,email,department_id,salary,commission_pct ) values( 12345,?Chen?,?Donny?, sysdate, 12, ?donny@hotmail.com?,60,10000,.25); select commission_pct from employees wh
5、ere employee_id=12345; 觸發(fā)器不會(huì)通知用戶,便改變了用戶的輸入值。 觸發(fā)器類型: 1 、 語(yǔ)句觸發(fā)器 2 、 行觸發(fā)器 3 、 INSTEAD OF 觸發(fā)器 4 、 系統(tǒng)條件觸發(fā)器 5 、 用戶事件觸發(fā)器 1 、 語(yǔ)句觸發(fā)器 是在表上或者某些情況下的視圖上執(zhí)行的特定語(yǔ)句或者語(yǔ)句組上的觸發(fā)器。能夠與 INSERT 、 UPDATE 、 DELETE 或者組合上進(jìn)行關(guān)聯(lián)。但是無(wú)論使用什么樣的組合,各個(gè)
6、語(yǔ)句觸發(fā)器都只會(huì)針對(duì)指定語(yǔ)句激活一次。 比如,無(wú)論 update 多少行,也只會(huì)調(diào)用一次 update 語(yǔ)句觸發(fā)器。 例子: 需要對(duì)在表上進(jìn)行 DML 操作的用戶進(jìn)行安全檢查,看是否具有合適的特權(quán)。 Create table foo(a number); Create trigger biud_foo Before insert or update or delete On foo Begin If user not i
7、n (?DONNY?) then Raise_application_error(-20001, ?You don?t have access to modify this table.?); End if; End; / 即使 SYS , SYSTEM 用戶也不能修改 foo 表 [ 試驗(yàn) ] 對(duì)修改表的時(shí)間、人物進(jìn)行日志記錄。 1 、 建立試驗(yàn)表 create table employees_copy as sel
8、ect *from hr.employees 2 、 建立日志表 create table employees_log( who varchar2(30), when date); 3 、 在 employees_copy 表上建立語(yǔ)句觸發(fā)器,在觸發(fā)器中填充 employees_log 表。 Create or replace trigger biud_employee_copy Before insert or update
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- oracle語(yǔ)句級(jí)觸發(fā)器
- 主從rs觸發(fā)器,jk觸發(fā)器
- 通過(guò)觸發(fā)器跟蹤對(duì)表的修改sql語(yǔ)句
- 基本rs觸發(fā)器和d觸發(fā)器
- d觸發(fā)器&雙d觸發(fā)器
- 實(shí)驗(yàn)六 rs觸發(fā)器和d觸發(fā)器
- 觸發(fā)器總結(jié)
- ppt觸發(fā)器
- d 觸發(fā)器
- 觸發(fā)器格式
- mysql觸發(fā)器
- 觸發(fā)器實(shí)例
- ddl觸發(fā)器
- 觸發(fā)器作業(yè)
- 觸發(fā)器語(yǔ)法
- 觸發(fā)器編程
- d觸發(fā)器原理-d觸發(fā)器電路圖
- 實(shí)驗(yàn)四 基本rs觸發(fā)器和d觸發(fā)器2
- oracle觸發(fā)器3
- after insert觸發(fā)器
評(píng)論
0/150
提交評(píng)論