欢迎来到天天文库
浏览记录
ID:62064505
大小:516.00 KB
页数:49页
时间:2021-04-14
《最新820触发器教学讲义PPT.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、进入夏天,少不了一个热字当头,电扇空调陆续登场,每逢此时,总会想起那一把蒲扇。蒲扇,是记忆中的农村,夏季经常用的一件物品。 记忆中的故乡,每逢进入夏天,集市上最常见的便是蒲扇、凉席,不论男女老少,个个手持一把,忽闪忽闪个不停,嘴里叨叨着“怎么这么热”,于是三五成群,聚在大树下,或站着,或随即坐在石头上,手持那把扇子,边唠嗑边乘凉。孩子们却在周围跑跑跳跳,热得满头大汗,不时听到“强子,别跑了,快来我给你扇扇”。孩子们才不听这一套,跑个没完,直到累气喘吁吁,这才一跑一踮地围过了,这时母亲总是,好似
2、生气的样子,边扇边训,“你看热的,跑什么?”此时这把蒲扇,是那么凉快,那么的温馨幸福,有母亲的味道! 蒲扇是中国传统工艺品,在我国已有三千年多年的历史。取材于棕榈树,制作简单,方便携带,且蒲扇的表面光滑,因而,古人常会在上面作画。古有棕扇、葵扇、蒲扇、蕉扇诸名,实即今日的蒲扇,江浙称之为芭蕉扇。六七十年代,人们最常用的就是这种,似圆非圆,轻巧又便宜的蒲扇。 蒲扇流传至今,我的记忆中,它跨越了半个世纪,也走过了我们的半个人生的轨迹,携带着特有的念想,一年年,一天天,流向长长的时间隧道,袅820
3、触发器教学目标掌握触发器的概念掌握触发器的定义和使用方法了解在触发器中如何抛出用户自定义异常信息重点及难点触发器定义触发器应用(难点)触发器触发器事件决定了触发器的类型。触发器可以按照INSERT、UPDATE或DELETE操作进行定义,并且它们也可以点火进行行操作或语句操作。触发器也可以对多种类型的触发语句点火。触发器的语法结构完整的过程结构如下:createorreplacetrigger触发器名[before
4、after
5、insteadof]trigger_event[foreachrow
6、]begin执行语句段;exception异常处理语句段;end;注意事项(1)一个FOREACHROW执行指定操作的触发器为操作修改的每一行都调用一次(行级触发器)。若不带该参数则表示该触发器为语句级触发器,语句级触发器只在插入,修改或删除时执行一次,无论插入,修改,删除影响的是单行还是多行。(2)SELECT并不更改任何行,因此不能创建SELECT触发器。(3)触发器和某一指定的表格有关,当该表格被删除时,任何与该表有关的触发器同样会被删除。(4)在一个表上的每一个动作只能有一个触发器与之关
7、联。Instead-of触发器PL/SQL提供了另外一种触发器。Instead-of触发器仅可以定义在视图上,并且它们可以替代点火它们的DML语句进行点火。Instead-of触发器必须是行级的。Instead-of触发器是必要的,因为定义触发器的视图可能基基于联结(join)并且并非所有的联结都是可更新的。该触发器便可以按照所需的方式执行更新。例如:Instead-of触发器定义下面的视图:createorreplaceviewstu_avgasselectsno,avg(grade)stu_
8、avgfromscgroupbysno;若执行下面语句:deletefromstu_avgwheresno='001';则报错:ORA-01732:此视图的数据操纵操作非法Instead-of触发器创建触发器:createorreplacetriggerstu_avg_deleteinsteadofdeleteonstu_bforeachrowbegindeletefromscwheresno=:old.sno;end;再执行删除语句,则删除成功。对触发器的限制触发器的主体是一个PL/SQL块。
9、在PL/SQL块中可以使用的所有语句在触发器主体中都是合法的,但是要受到下面限制的约束:1.触发器不应该使用事务控制语句-COMMIT,ROLLBACK或SAVEPOINT。触发器作为触发语句执行的一部分被点火,它和触发语句在同一个事务中。当触发语句被提交或撤回提交时,触发器的上作也相应被提交或撤回提交。2.由触发器主体调用的任何过程或函数都不能使用事务控制语句。3.触发器主体不能声明任何LONG或LONGRAW变量。而且,:new和:old不能指向定义触发器的表中的LONLONG或LONGRA
10、W列。4.触发器主体可以访问的表有所限制。根据触发器类型以及在表上的约束限制的不同,表可能也会变化。查询,删除和禁止触发器在user_triggers视图中可以查询触发器:select*fromuser_triggerswheretrigger_name=upper('stu_avg_delete');删除触发器:Droptriggerstu_avg_delete;禁止和打开触发器:altertriggerstu_avg_deletedisable|enable;查询,删除和禁止触发器禁止和打开
此文档下载收益归作者所有