oracle存储过程和触发器
来源:互联网 发布:深圳华策数据 编辑:程序博客网 时间:2024/05/16 11:40
--过程
创建过程,create procedure语句可以用于创建过程,简化语法如下:
create [or replace] procedure procedure_name
[(parameter_name [in|out|in out] type [,...])]
{is | as}
begin
procedure_body
end parameter_name;
--触发器
触发器(trigger)是当特定的SQL DML语句,如insert,update或delete语句在特定的数据库表上运行时,由数据库自动运行(或者用技术来讲是自动激活)的过程。触发器对于实现表中某个列值的高级变更审计等功能非常有用。简化语法如下:
create [or replace] trigger trigger_name
{before|after|instead of} trigger_event
on table_name
[for each row [when trigger_condition]]
begin
trigger_body
end trigger_name
其中,for each row指定触发器是一个行级触发器,即当触发器激活时,trigger_body中包含的代码会为每一行运行一次,如果for each row没有,则触发器是一个语句级触发器,即不管所作用的行有多少,当触发器激活时,trigger_body中包含的语句只运行一次。befor指定触发器在触发事件运行之前激活,after是定触发器在触发事件运行之后激活,instead of指定用触发器激活代替触发事件的运行。
创建过程,create procedure语句可以用于创建过程,简化语法如下:
create [or replace] procedure procedure_name
[(parameter_name [in|out|in out] type [,...])]
{is | as}
begin
procedure_body
end parameter_name;
其中,or replace说明如果该过程已经存在,则用新的过程代替它。该选项可以用来修改一个现有过程;in|out|in out定义了参数的模式。in为默认的模式。type指定参数的类型。 procedure_body包含执行过程任务的sql和pl/sql语句。
--创建一个过程,给某个教师加工资create or replaceprocedure update_t_sal(t_tno in t.tno%type, t_num in number)ast_count_id integer;begin select count(*) into t_count_id from t where t_tno=tno; if t_count_id = 1 then update t set sal=sal+t_num where t_tno=tno; commit; end if;exception when others then rollback;end update_t_sal;--过程的调用call update_t_sal('t1', 100);--删除过程drop procedure update_t_sal;
--触发器
触发器(trigger)是当特定的SQL DML语句,如insert,update或delete语句在特定的数据库表上运行时,由数据库自动运行(或者用技术来讲是自动激活)的过程。触发器对于实现表中某个列值的高级变更审计等功能非常有用。简化语法如下:
create [or replace] trigger trigger_name
{before|after|instead of} trigger_event
on table_name
[for each row [when trigger_condition]]
begin
trigger_body
end trigger_name
其中,for each row指定触发器是一个行级触发器,即当触发器激活时,trigger_body中包含的代码会为每一行运行一次,如果for each row没有,则触发器是一个语句级触发器,即不管所作用的行有多少,当触发器激活时,trigger_body中包含的语句只运行一次。befor指定触发器在触发事件运行之前激活,after是定触发器在触发事件运行之后激活,instead of指定用触发器激活代替触发事件的运行。
0 0
- oracle存储过程和触发器
- oracle存储过程和触发器
- oracle触发器和存储过程
- oracle触发器和存储过程
- 关于oracle存储过程和触发器
- Oracle中的存储过程,函数和触发器
- Oracle的存储过程、函数和触发器
- oracle 触发器和存储过程简单例子
- oracle中的游标,例外,存储过程,存储函数和触发器
- 触发器和存储过程
- 触发器和存储过程
- 触发器和存储过程
- 触发器和存储过程
- 存储过程和触发器
- 存储过程和触发器
- 存储过程和触发器
- 触发器和存储过程
- 存储过程和触发器
- 剑指offer—字符串转换整数
- 多线程(二)实现多线程两种方式
- NSTimer的初始化、暂停、继续和终结
- 优秀来源于你的努力
- SVDFeature
- oracle存储过程和触发器
- 各大网站的字体选择
- 深入浅出如何解析xml文件---上篇
- Java 自定义异常
- 纯C语言矩阵乘法的Strassen算法,包含非2次幂的情况
- 设置Tomcat的UTF-8编码
- EditText 焦点控制,进入界面时不弹出键盘
- java异常
- acm 3 1002 子序列