第八章上机课触发器和内置程序包.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第八章上机课触发器和内置程序包

老二牛车教育 《Oracle 数据库应用 》上机课 触发器和内置程序包 目标: 能够使用触发器 能够使用内置程序包 第一部分 指导 本阶段的重点学习如何编写创建触发器的语句,还将学习编写以使用各种内置程序包的方法。 阶段一:创建语句触发器 需求说明: 公司经理认为itemfile 表中的数据非常重要,希望所有对该表进行的更新都要有记录,但只记录 所做的操作,不记录用户更新的具体数据,请提出解决方案。 实现思路: 语句级触发器对每个DML 语句执行一次,通常用于强制实施在表上执行操作的额外安全性措施。 语句级触发器CREATE TRIGGER 命令创建的触发器的默认类型。可以首先创建一个记录信息 的表,然后在itemfile 表上创建一个执行UPDATE 、INSERT 和DELETE 语句都会激活的语句级 触发器。 参考步骤: (1) 启动“ SQL Plus”。 (2 ) 输入以下命令,创建记录操作的表。 CREATE TABLE itemfile_log ( who VARCHAR2(30), When DATE, action VARCHAR2(20) ); (3 )输入以下命令,创建语句级触发器。 CREATE OR REPLACE TRIGGER modify_itemfile BEFORE INSERT OR UPDATE OR DELETE ON itemfile DECLARE l_action itemfile_log.action%TYPE; BEGIN IF INSERTING THEN l_action := 插入; ELSIF UPDATING THEN l_action := 更新; ELSIF DELETING THEN l_action := 删除; END IF; 老二牛车教育 《Oracle 数据库应用 》上机课 INSERT INTO itemfile_log(who, When, action) VALUES ( USER, SYSDATE, l_action); END; / (4 )测试触发器。 执行以下语句对itemfile 进行更新。 UPDATE itemfile SET itemrate = itemrate + 20 WHERE itemcode =i205; 上述语句显示信息“已更新1 行”。 执行以下语句查看itemfile-log 表的信息。 SELECT * FROM itemfile_log; 输出结果如下: WHO WHEN ACTION CHENGSHI 2010-10-3 2 更新 CHENGSHI 2010-10-3 2 更新 CHENGSHI 2010-10-3 2 更新 阶段二:创建行级触发器 需求说明: 产品销售订单条目上包括产品的编号、数量和单价,由于统计的需要,订单上还需要显示每种 产品的总金额,它的数量和单价的乘积。为了确保此数据的正确性,需要对此字段进行自动计 算。 实现思路: 行级触发器在执行更新的DML 语句时自动执行,行级触发器对DM

文档评论(0)

l215322 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档