pl/sql编程----触发器
2019-04-17 17:17
274 查看
触发器 (trigger)
触发器指隐含的执行的存储过程,既当特定事件出现时自动执行的存储过程。
当定义触发器时,必须要指定触发的事件和触发的操作,常用的触发事件包括insert,update,delete语句,而触发操作实际就是一个pl/sql块
触发器的功能:自动生成数据,
自定义复杂的安全权限,
提供审计和日志记录,
启用复杂的业务逻辑
触发器类型:
模式(DDL)触发器,执行DDL语句时执行
数据库级触发器,在发生打开,关闭,登录,退出数据库等系统事件时执行
DML触发器(行级触发器:对影响的每个行执行一次
语句级触发器:无论受影响的行数是多少,只执行一次
instead of 触发器 :用于用户不能直接使用DML语句修改的视图
)
使用create trigger 命令创建
语法:
create or replace trigger 名
after/before/instead of
insert/[or]update of column/[or]delete
on 表名
[for each row ] --行触发器,每触发一行时触发
[when (condition)]
pl/sql块
脚本:
--删除表 drop table book; --创建表book create table book (bid number,bname varchar2(50),bhouse varchar2(50)); --插入数据 insert into book(bid,bname,bhouse) values(1,'笑傲江湖','人民出版社'); insert into book(bid,bname,bhouse) values(2,'钢铁是怎样炼成的','人民出版社'); insert into book(bid,bname,bhouse) values(3,'平凡的世界','人民出版社'); commit; 案例: create or replace trigger tri_book after insert on book for each row begin if(:new.bid = 2) then dbms_output.put_line('插入成功'); else dbms_output.put_line('插入成功2'); end if; end;
相关文章推荐
- Oracle PL/SQL编程之八:把触发器说透
- PL/SQL 编程(三 )程序包和包体,触发器,视图,索引
- ORACLE PL/SQL编程之八:把触发器说透
- oracle(3)pl/sql编程基础 存储过程、函数、包、触发器
- ORACLE PL/SQL编程之八: 把触发器说透
- Oracle数据库编程:使用PL/SQL编写触发器
- ORACLE PL/SQL编程之八:把触发器说透
- PL-SQL 编程(三 )程序包和包体,触发器,视图,索引
- ORACLE PL/SQL编程之八:把触发器说透
- ORACLE PL/SQL编程之八: 把触发器说透
- ORACLE PL/SQL编程之触发器
- 转帖:ORACLE PL/SQL编程之八: 把触发器、过程、函数说透
- ORACLE PL/SQL编程之八:把触发器说透
- Oracle(20)pl/sql编程 过程、函数、包以及触发器概念
- pl/sql 编程入门经典教程之触发器篇
- ORACLE PL/SQL编程之八:把触发器说透
- ORACLE PL/SQL编程之八: 把触发器说透
- ORACLE PL/SQL编程之八: 把触发器说透
- PL/SQL——编程(存储过程、函数、触发器、包)
- Oracle数据库编程:使用PL/SQL编写触发器