rale实验6下触发器和包.docVIP

  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文档。上传文档
查看更多
rale实验6下触发器和包.doc

《数据库开发技术》实验1下)报告 实验题B: PL/SQL的触发器与包 闩期 | 2015.12.6 班级 |计算机1301 |姓名 | 实验环境:winlO+oracle 1 lg 实验内容与完成情况(记录所有的实验过程): 编写一个触发器,在DEPT表执行INSERT语句后被激发,此触发器将新部U的编 号(deptno)、名称(dname)及执行此操作的户(USER)、当吋的日期(SYSDATE) 插入N_DEPT表{注:此表己建好,表结构为N_DEPT (DEPTNO NUMBER(4),DNAME VARCHAR2(10),UNAME VARCHAR2(20),INDATE DATE)}。 代码.? create table n_dept(deptno number(4),dname varchar2(10), uname varchar2(20),indate date); create or replace trigger del_emp after insert on dept for each row begin insert into n_dept values(:new.deptno/new.dname,user,sysdate); end; insert into dept values(60,,MMMM\,hunan); 结果截图: I TRIGGER DML_LOG 已缩译 Errors: check compiler leg table N__DEPT 已创建。 TRIGGER DEL_EMF 已编译 1行已插入。 创建触发器CHECK_SAL,禁示对职务为CLERK的雇员的工资修改值超ili 1000至 2000的范围,即CLERK职务员工的修改后工资值只能在1000?2000之间。要求测 试该触发器。 步骤1:创建和编译触发器: 代码: Create or replace trigger check_sal Before update of sal On emp For each row Begin If (:new.sal1000 or :new.sal2000) and :old.job=CLERK then Raise_application_error(-20000/工资修改值超出1000至2000的范围,操作取消!?); End if; End; 结果截图: TRIGGER CHECK_SAL 已编译 步骤2:在EMP表中修改记录,对触发器进行测试: 代码: Update emp set sal=800 where empno=7876; 结果截图: 在行:19上开始汍行命令时出错- Update emp set sa1=800 where empno=7876 错误指告- SQL错误:CRA-20000:工资修改值超出10(W至2000的范困,操作取消! ORA-06512:在 MSCOTT.CHECK_SALMr line 3 CRA-04088:触发器1 SCOTT.CHEC^SAL汍行过程中出错 20000. 00000 - %s” *Cause: The stored procedure 1raise_application_error1 was called which causes this error to be generated. *Action: Correct the problem as described in the error message or contact the application administrator or DBA for mere information. 3.编写一个管理雇员信怠的乜emp mgmt。包屮有成员如下: 程序结构 类型 说明 Emp_count 公冇变 量 跟踪鉍工的总人数变化,插入和删除记工时要修改该变fi 的值 init 公朽过 程 初始化包,初始化员丁人数和当前个人所得税率,建议有 一个输入参数p_tax,传入当前个人所得税率,暂定为工 资的8%。 tax_emp 公有函 数 通过员工编号计算出员工应交个人所得税款 Hire_emp 公有过 程 通过员工编号插入员工 Fire_emp 公有过 程 通过员工编号删除员工 emp tax record 记录 川于游#C emp的RETURN (强类型游标)语句屮 C emp 游标 用于游标FOR循环111,会被过程show emp tax所使用 show_emp_tax 公有过 程 按工资升序输出所奋雇员的应交所得税淸单 Exist_emp 私有阑 数 判断某个编号的员工足否存在,该函数会被hire_emp和 fire emp等过程调用 sal null 异常名

文档评论(0)

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

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

1亿VIP精品文档

相关文档