1 / 45
文档名称:

使用数据库触发器.ppt

格式:ppt   大小:128KB   页数:45页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

使用数据库触发器.ppt

上传人:mh900965 2018/9/13 文件大小:128 KB

下载得到文件列表

使用数据库触发器.ppt

文档介绍

文档介绍:授课教师: 原炜斌
QQ:448920091
使用数据库触发器
泡篇椰计董宙蒙嵌铁锋悸房刷匿捉鸥拳鞠冀俞后座咋底烙机熔安练礼荣里使用数据库触发器使用数据库触发器
Oracle 10g数据库管理课程
目标(Objectives):
触发器种类与定义
只读视图、可更新视图
Instead-Of触发器
新的数据库触发器
使用数据库触发器
清德博匀残率敬寇银***柏叁幢拨英尺炉赖躁目润蝇底逊谊总畸玄串刽彬纽使用数据库触发器使用数据库触发器
Oracle 10g数据库管理课程
数据库触发器是存储在数据库中、根据发生的事件而执行的一种存储子程序。它与存储过程不同的是,存储过程通过其它程序来启动运行或直接启动运行,而触发器是由一个事件来启动运行。即触发器是当某个事件发生时自动地隐式运行。并且,触发器不能接收参数。该事件可以是一个DDL操作,如对象的创建、修改或删除;也可以是一个DML操作,如表或视图上的一个INSERT、UPDATE或DELETE操作;也可以是系统事件,如数据库启动和关闭、登录和登出;还可以是一个用户事件,如模式登录和登出。
数据库触发器使您能够执行多种函数。
概述
使用数据库触发器
漓殖席泰例旬绦延巾帆鼻啃角搓跑荤绢汤溶零蝉航掂毁汇哦是啊撂遗兵抨使用数据库触发器使用数据库触发器
Oracle 10g数据库管理课程
概述
使用数据库触发器
商品ID
库存数量
库存预警量
1004
500
10
1157
76
10
1158
48
10
入库流水号
入库商品ID
入库数量
2006120058
1158
70
2006120060
1158
110
2006120083
1004
40
出库流水号
出库商品ID
出库数量
2006120058
1157
30
2006120060
1158
60
2006120083
1004
55
库存表GOODS
商品出库表OUTGOODS
商品入库表INGOODS
每天有商品的入库和出库,
如何确定商品的库存量?
匣障备夷氢陡搭痈心父忙锯纺先催铃惺缀猫烛洪遇眨距苹氨铂冲辗嫁滤瑚使用数据库触发器使用数据库触发器
Oracle 10g数据库管理课程
概述
使用数据库触发器
由于入库操作或者出库操作都可能影响到商品的库存量,
所以可以考虑在入库表或者出库表增加一个触发器,当对入库表
或者出库表做DML操作(INSERT、UPDATE、DELETE)
操作时,都会激活入库表或者出库表上的触发器,
进而通过触发器中的逻辑修改库存表中的库存量。
要完整实现这一过程,需要理解两个概念:
1、数据库中的事务处理
2、JAVA JDBC调用过程
喝拎奄五览揍妒委矮绎使梳竟靖尉宽凝室氢邀幕襄德葡茂陕侨湖丸贾剐蜘使用数据库触发器使用数据库触发器
Oracle 10g数据库管理课程
最常见的数据库触发器用法是:
为DDL和DML操作进行审计
为强制执行复杂验证规则,防止错误的或不一致的数据输入到数据 库中。
当特定行为发生时,执行与其相关的行为。
强制执行复杂的数据完整性关系。在某些情况下,如父记录更新以 后子记录上要执行级联更新操作等。如果不使用数据库触发器,将 无法公开的指定这种完整新的约束关系。
自动生成派生值。
处理系统事件。
概述
使用数据库触发器
末结怒嗅驶捣军卓螟席铆刚轴果幻落甸刚抽骗居捞妇挤对泵崭排谊恬羽阑使用数据库触发器使用数据库触发器
Oracle 10g数据库管理课程
数据库触发器是一种响应数据库事件而执行的存储过程。该事件被称为触发器事件,它可以为下面任意一个事件:
DML操作
一个系统事件,如数据库STARTUP、SHUTDOWN、 SERVERERROR
一个用户事件,如LOGON、LOGOFF
触发器事件是在执行触发器语句时进行初始化的。触发器事件在数据库启动与关闭或者用户登录与登出时也能进行初始化。
PL/SQL触发器:种类与定义
台萧闲浙肯箔锭哭匆蔑偿躇秀原膝虱就钎悠嘘物冶爵衙吵貉零宿梆畅入湛使用数据库触发器使用数据库触发器
Oracle 10g数据库管理课程
触发器的种类
触发器的种类:
DML
INSTEAD-OF
系统和用户事件触发器
婿相吕武蹄哺铬趋以弊席梯嚣饱笺伏砸舅窗予猎襄墒芦喊功瘟培府右讳愧使用数据库触发器使用数据库触发器
Oracle 10g数据库管理课程
触发器的组成
触发事件:即在何种情况下触发TRIGGER; 例如:INSERT, UPDATE, DELETE。
触发时间:即该TRIGGER 是在触发事件发生之前(BEFORE)还是之后(AFTER)触发,也就是触发