Oracle觸發器非常新。假設我在表emp中有一個插入觸發器。有沒有辦法找出觸發觸發器的插入記錄是什麼。如果插入的記錄是特定的值,我希望觸發器具有執行某些操作的代碼。獲取觸發Oracle觸發器的值
7
A
回答
10
假設你有一個行級觸發器,你可以簡單地使用:NEW
僞記錄
CREATE TRIGGER name_of_trigger
BEFORE INSERT ON emp
FOR EACH ROW
DECLARE
<<declare variables>>
BEGIN
IF(:new.ename = 'JUSTIN')
THEN
<<do something if the newly inserted ENAME value is 'JUSTIN'>>
END IF;
END;
對於DDL觸發器,這種方法是完全不同的。在這種情況下,僞函數ora_dict_obj_owner和ora_dict_obj_name將返回DDL語句操作的表的所有者和名稱。
7
相關問題
- 1. Oracle觸發器
- 2. mysql觸發器到oracle觸發器
- 3. Oracle觸發器未讀取
- 4. Oracle AFTER INSERT觸發器未觸發
- 5. Oracle SQL(觸發器)
- 6. Oracle觸發器:raise_application_error
- 7. Oracle 10g觸發器
- 8. 觸發器在Oracle
- 9. 從Oracle觸發器
- 10. Oracle SQL觸發器
- 11. ORACLE 11g觸發器
- 12. SQL Oracle觸發器
- 13. 獲取觸發
- 14. Oracle 10g中的觸發器
- 15. 使用觸發器來獲取值
- 16. 獲取回傳觸發器
- 17. 從ContentObserver獲取觸發器
- 18. SQL/Oracle 10g - 觸發器故障/從表中獲取值
- 19. MySQL的觸發獲取當前的查詢導致觸發器觸發
- 20. 調用另一個觸發器的Oracle觸發器
- 21. 創建觸發器ORACLE
- 22. Oracle突變觸發器
- 23. ORACLE觸發器INSERT更新
- 24. CREATE觸發器幫助Oracle
- 25. Oracle觸發器不更新
- 26. ORACLE回滾和觸發器
- 27. SQL觸發器在Oracle中
- 28. Oracle - 觸發器錯誤
- 29. Oracle觸發器權限
- 30. Oracle中創建觸發器
嘿@Justin Cave抱歉打擾你,但我意識到我實際上需要一個DDL或系統觸發器,而不是一個DML觸發器。每次在模式中創建一個新表時,我都會調用觸發器CREATE OR REPLACE TRIGGER drop_trigger AFTER CREATE ON hr.SCHEMA BEGIN END;'我將如何獲取現在觸發觸發器的表的名稱?它還是新的? – Eosphorus 2012-01-11 22:03:35
@Eosphorus - 不,DDL觸發器是非常不同的動物。更新了我的答案。 – 2012-01-11 22:25:02
非常感謝賈斯汀。這是你現在幫助我的很多次。對此,我真的非常感激 :) – Eosphorus 2012-01-11 22:55:20