oracle触发器有多种,分别是:DML触发器、DDL触发器、替代触发器、系统触发器。
DML触发器是执行insert、delete、update语句时自动调用执行触发器代码块,又分为事件执行前触发(before)和事件执行后触发(AFTER)
DDL触发器是基于create、alter、drop等语句的触发器,它也可以在这些语句执行前后来执行
替代(instead of)触发器能够替代原始触发的动作,该触发器扩展了试图更新的类型
系统触发器是基于Oracle系统事件(logon和startup)所建立的触发器,可以跟踪系统或者数据库的变化
基本语法
1. 创建触发器
CREATE TRIGGER trigger_name
{BEFORE|AFTER|INSTEAD OF} trigger_event ON {table_name|view_name}
[FOR EACH ROW]
BEGIN
trigger_body
END trigger_name
2. 修改触发器
CREATE [OR REPLACE] TRIGGER trigger_name
3. 删除触发器
DROP TRIGGER trigger_name
4. 查看触发器
可以去USER_TRIGGER、ALL_TRIGGER、DBA_TRIGGER这三个数据字典表里面查看