Oracle 触发器语法及实例(二)
2008-09-19 12:55:36 来源:WEB开发网测试,插入几条记录
insertintotestvalues(0,'ff');
insertintotestvalues(0,'ff');
insertintotestvalues(0,'tt');
实例二:
创建一个触发器,无论用户插入新记录,还是修改emp表的job列,都将用户指定的job列的值转换成大写.
createorreplacetriggertrig_job
beforeinsertorupdateofjob
onemp
foreachrow
begin
ifinsertingthen
:new.job:=upper(:new.job);
else
:new.job:=upper(:new.job);
endif;
end;
2.3、instead of触发器.
(此触发器是在视图上而不是在表上定义的触发器,它是用来替换所使用实际语句的触发器.)
语法如下:
createorreplacetriggertrig_test
insteadofinsertorupdateon表名
referencingnewasn
foreachrow
declare
..........
begin
........
end;
2.4、模式触发器.
可以在模式级的操作上建立触发器.
实例如下:
createorreplacetriggerlog_drop_obj
afterdroponschema
begin
insertinto.....
end;
2.5、数据库级触发器.
可以创建在数据库事件上的触发器,包括关闭,启动,服务器错误,登录等.这些事件都是实例范围的,不与特定的表或视图关联.
实例:
createorreplacetriggertrig_name
afterstartupondatabase
begin
...........
end;
- ››oracle 中 UPDATE nowait 的使用方法
- ››Oracle ORA-12560解决方法
- ››Oracle 10g RAC 常用维护命令
- ››Oracle如何在ASM中定位文件的分布
- ››Oracle的DBMS_RANDOM.STRING 的用法
- ››oracle 外部表导入时间日期类型数据,多字段导入
- ››Oracle中查找重复记录
- ››oracle修改用户登录密码
- ››Oracle创建删除用户、角色、表空间、导入导出等命...
- ››Oracle中登陆时报ORA-28000: the account is lock...
- ››Oracle数据库在配置文件中更改最大连接数
- ››Oracle中在pl/sql developer修改表的两种方式
更多精彩
赞助商链接