- 1、本文档共90页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1. 创建者:表的拥有者 2. 触发器名 3. 表名:触发器的目标表 4. 触发事件:INSERT、DELETE、UPDATE 对于UPDATE事件,可以用以下形式表示对某些列的修改会引起触发器的动作: UPDATE OF 列名1,列名2... 5. 触发器类型 行级触发器(FOR EACH ROW) 语句级触发器(FOR EACH STATEMENT) 3. 执行存储过程 执行(或调用)存储过程的人是过程的创建者或是拥有EXECUTE ANY PROCEDURE系统权限的人或是被拥有者授予EXECUTE权限的人。 方法1: EXECUTE 模式名.存储过程名[(参数1,…)]; 方法2: BEGIN 模式名.存储过程名[(参数1,…)]; END; 参数的值由调用者传递,传递的参数的个数、类型和顺序应该和定义的一致。如果顺序不一致,可以采用以下调用方法: 参数名=参数值表达式 参数可以是变量、常量或表达式; 如果是调用本账户下的存储过程,则模式名可以省略。要调用其他账户编写的存储过程,则模式名必须要添加。 说明: 例5.3 用户注册检查,其数据库表结构如下所示,编写存储过程进行用户登录检查,并记录检查结果(同例2)。 (1) 输入参数1为用户名; (2) 输入参数2为密码; (3) 输出参数为:用户名和密码正确,返回值为0;密码错误返回值为-1;用户名错误返回值为-2。 4. 示例程序 … … msg … passwd Userid tout: userlog: 5.3 Oracle包 包是用来存储相关程序结构的对象,它存储于数据字典中。 包由两个分离的部分组成: 包头(PACKAGE):包的说明部分,是对外的操作接口,对应用是可见的; 包体(PACKAGE BODY):包的代码和实现部分,对应用来说是不可见的黑盒。 包的介绍略 5.4 触发器 触发器类似于过程和函数,它们都是拥有声明、执行和异常处理过程的带名PL/SQL块,触发器必须在数据库中以独立对象的身份存储。 执行触发器的操作就是“启动”触发器。触发器必须由事件才能触发。触发事件发生时就会隐式地执行该触发器,并且触发器不接受参数。 触发器又叫做事件—条件—动作规则。触发器是当特定的系统事件(如对一个表的增、删、改,事务的结束)发生时,对规则的条件进行检查,如果条件成立则执行规则中的动作,否则不执行该动作。触发事件的操作可能执行也可能不执行。 不接受参数 可以传递参数 参数传递 通过事件触发而被执行 通过存储过程名字而被直接调用 调用执行 触发器 存储过程 存储过程与触发器的比较 触发器的作用主要有以下几点: 维护不可能在表创建时刻通过声明性约束进行的复杂的完整性约束限制; 完整性限制是当被限制的对象发生变化时,系统就去检查该对象变化后能否满足限制条件,如果不能满足,就拒绝引起这种变化的操作。 提供透明的审计记录,通过记录所进行的修改以及谁进行了修改来审计表中的信息; 利用触发器还可以做很多其他工作,例如: 自动产生导出列的值; 实施复杂的安全授权; 执行复杂的业务规则; 可阻止非法的事务处理; 表被修改的时候,自动给其他需要执行操作的程序发信号。 5.4.1 触发器的种类和触发事件 触发器事件可分为3类: DML事件 DDL事件 数据库事件 触发器类型可分为4类: DML触发器 DDL触发器 替代触发器 数据库事件触发器 本课程只介绍DML触发器 发生服务器错误时触发 SERVERERROR 当一个会话从数据库中断开时触发 LOGOFF 当用户连接到数据库并建立会话时触发 LOGON 在使用NORMAL或IMMEDIATE选项关闭 数据库时触发 SHUTDOWN 数据打开时触发 STARTUP 数据库事件(5种) 删除对象时触发 DROP 修改数据库或数据库对象时触发 ALTER 在创建新对象时触发 CREATE DDL事件(3种) 在删除表或视图中的数据时触发 DELETE 修改表或视图中的数据时触发 UPDATE 在表或视图中插入数据时触发 INSERT DML事件(3种) 含 义 关 键 字 种 类 触发器事件 定义在整个数据库或模式上,触发 事件是数据库事件 — 数据库事件触发器 定义在模式上,触发事件是数据库 对象的创建和修改 DDL触发器 数据定义语言触发器 创建在视图上,用来替换对视图进行的插入、删除和修改操作 INSTEAD OF触发器 替代触发器 创建在表上,由DML事件引发的 触发器 DML触发器 数据操纵语言触发器 作 用 简 称 种 类 触
您可能关注的文档
- 数据恢复(精品·公开课件).ppt
- 数据恢复技术原理与应用 戴士剑(精品·公开课件).ppt
- 数据恢复软件(精品·公开课件).ppt
- 数据恢复软件介绍(精品·公开课件).ppt
- 数据集中平台(精品·公开课件).ppt
- 数据结构 - 程序员联合开发网(精品·公开课件).ppt
- 数据结构 chapter 9(1) 图 图的基本概念与抽象数据类型(精品·公开课件).ppt
- 数据结构 第1章 绪论(精品·公开课件).ppt
- 数据结构 第1章(精品·公开课件).ppt
- 数据结构 第7章 图1-图的定义和存储(精品·公开课件).ppt
- 2024高考物理一轮复习规范演练7共点力的平衡含解析新人教版.doc
- 高中语文第5课苏轼词两首学案3新人教版必修4.doc
- 2024_2025学年高中英语课时分层作业9Unit3LifeinthefutureSectionⅢⅣ含解析新人教版必修5.doc
- 2024_2025学年新教材高中英语模块素养检测含解析译林版必修第一册.doc
- 2024_2025学年新教材高中英语单元综合检测5含解析外研版选择性必修第一册.doc
- 2024高考政治一轮复习第1单元生活与消费第三课多彩的消费练习含解析新人教版必修1.doc
- 2024_2025学年新教材高中英语WELCOMEUNITSectionⅡReadingandThi.doc
- 2024_2025学年高中历史专题九当今世界政治格局的多极化趋势测评含解析人民版必修1.docx
- 2024高考生物一轮复习第9单元生物与环境第29讲生态系统的结构和功能教案.docx
- 2024_2025学年新教材高中英语UNIT5LANGUAGESAROUNDTHEWORLDSect.doc
文档评论(0)