实验四 过程、函数、触发器和程序包.doc
《实验四 过程、函数、触发器和程序包.doc》由会员分享,可在线阅读,更多相关《实验四 过程、函数、触发器和程序包.doc(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、实验四 过程、函数、触发器和程序包实验目的:(1)了解存储过程的作用;(2)了解函数的作用;(3) 掌握存储过程的创建;(4)掌握存储过程的调用;(5)掌握函数的建立;(6)掌握函数的调用。 (7) 掌握触发器的基本作用及使用方法。 (8) 掌握触发器的建立、修改、查看、删除操作。实验内容:一、过程、歪数(1)无参数的存储过程创建一个存储过程 proc_execution,要求能够将empno为9010的员工姓名更改为yourname,并调用执行这个存储过程。(2)带输入参数的存储过程创建一个存储过程,参数为员工编号,该存储过程能够删除指定的员工信息。请编写并调用该存储过程。(3)带输入输出的
2、存储过程创建一个存储过程,要求能够查询并返回EMP中给定职工号的姓名、工资和佣金。请编写并调用该存储过程。(4)带输入参数的函数:创建一个函数get_sal,要求能够查询并返回EMP中给定职工号的工资,请编写该函数并正确调用。(5)用异常处理完善程序请将第任务1中的程序完善,如果输入的员工号不存在,则执行异常处理,显示“此员工不存在”。(6)创建函数,实现功能为:在scott.emp表和scott.dept表中查询出任意给定职工号的职工姓名及职工所在部门的名称。(7)对存储过程、函数及触发器实现查看、修改、删除等基本操作。二、触发器1. 以SCOTT帐号登录,完成以下操作:(1)利用以下SQL
3、语句,创建emp_copy表和emp_bak表(2)在emp表中创建一个触发器tg_insert_emp,当向emp表中添加一条记录时,自动向emp_copy表也自动添加一条记录。当向emp表中更新一条记录时,自动更新emp_copy表中相关记录。(3)当删除emp表中一条记录时,自动删除emp_copy表中相关记录,并且将删除的记录自动添加到emp_bak表。.请编写相关触发器,完成下列操作:利用下面的命令创建一个表OP_LOGCREATE OR REPLACE TABLE op_log(ID VARCHAR2(20) PRIMARY KEY, op_dae date, op_type va
4、rchar2(200), op_user varhcar2(50);(1)编写一个触发器,当系统关闭时,记录系统关闭的时间及操作用户。(2)编写一个触发器,当系统启动时,记录系统启动的时间及操作用户。(3)编写一个触发器,当用户登录时,记录用户登录的时间,及用户名称。实验步骤与调试过程:1.1创建一个存储过程 proc_execution,将empno为9010的员工姓名更改为yourname,并调用执行这个存储过程。1.2创建一个存储过程,参数为员工编号,存储过程能够删除指定的员工信息1.3创建一个存储过程,查询并返回EMP中给定职工号的姓名、工资和佣金1.4创建一个函数get_sal,查询
5、并返回EMP中给定职工号的工资1.5创建一个存储过程proc_execution,将empno为9010的员工姓名更改为yourname,使用if语句判断,如果输入的员工号不存在,则执行异常处理,显示“此员工不存在”。1.6创建函数,在scott.emp表和scott.dept表中查询出任意给定职工号的职工姓名及职工所在部门的名称。1.7在存储过程、函数及触发器实现查看、修改、删除等基本操作。1.利用SQL语句,创建emp_copy表和emp_bak表2.在emp表中创建一个触发器tg_insert_emp,当向emp表中添加一条记录时,自动向emp_copy表也自动添加一条记录。当向emp表
6、中更新一条记录时,自动更新emp_copy表中相关记录。3.当删除emp表中一条记录时,自动删除emp_copy表中相关记录,并且将删除的记录自动添加到emp_bak表。4.编写一个触发器,当系统关闭时,记录系统关闭的时间及操作用户,当系统启动时,记录系统启动的时间及操作用户,以及当用户登录时,记录用户登录的时间,及用户名称。实验结果:通过创建一个存储过程,了解在存储过程中函数的作用,对数据表的数据进行修改、删除操作,并对存储过程进行调用,了解触发器的基本作用及使用方法,进行触发器的建立、修改、查看、删除操作。疑难小结:1. 存储过程中函数的使用2. 职工信息的修改删除操作3. 触发器的记录事
7、件4. 创建触发器的登录和退出触发器主要算法和程序清单:(1)无参数的存储过程创建一个存储过程 proc_execution,要求能够将empno为9010的员工姓名更改为yourname,并调用执行这个存储过程。Create Procedure proc_execution Select S.empno, S.sname From S.empno 9010 where S.empno=yourname END proc_execution (2)带输入参数的存储过程创建一个存储过程,参数为员工编号,该存储过程能够删除指定的员工信息。请编写并调用该存储过程。CREATE OR REPLACE
8、PROCEDURE proc_execution(in_id IN VARCHAR2,out_wage OUT VARCHAR2)ASBEGINSELECT wage S.empnointo out_wage DELETE S.empnoEND proc_execution;(3)带输入输出的存储过程创建一个存储过程,要求能够查询并返回EMP中给定职工号的姓名、工资和佣金。请编写并调用该存储过程。CREATE OR REPLACE PROCEDURE proc_execution(in_id IN VARCHAR2,out_wage OUT VARCHAR2)ASBEGINSELECT wag
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验四 过程、函数、触发器和程序包 实验 过程 函数 触发器 程序包
限制150内