下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、湖南科技学院计算机与通信工程系实 验 报 告实验项目使用游标、存储过程和触发器课程名称Oracle数据库成 绩时 间2012年12月 日 第 周 第 - 节地 点E305姓 名李敏华学 号201008003240班 级软件1002班一、实验要求在Oracle 10g中综合运用PL/SQL中各种程序控制结构、异常处理语句以及DML语句序编写实现游标、存储过程和触发器。二、实验目的(1) 了解游标的概念和工作原理。(2) 了解存储过程的分类和使用方法。(3) 了解触发器的概念。(4) 学习编写和执行自定义过程。(5) 学习创建和使用触发器。三、实验环境² 硬件设备:PC机一台²
2、 操作系统:Windows XP² 应用工具:Oracle 10g四、实验内容及结果(1) 创建游标mycur,从表employees中读取1号部门的员工姓名,职务。并输出“员工姓名:XXX,职务:XXX。”程序代码如下:SET ServerOutput ON; DECLARE CURSOR MyCur IS SELECT emp_id, emp_Name,title FROM LMH_40.employeeswhere emp_id=1;BEGIN FOR var_emptRecord IN MyCur LOOP dbms_output.put_line('员工编号:
3、9; | var_emptRecord.emp_Id |', 员工姓名:' | var_emptRecord.emp_Name|var_emptRecord.title|',职务'); END LOOP;END; 执行结果如下:(2) 创建存储过程GetGrade,查询指定员工的工资,使用CASE语句输出其工资等级。工资小于等于3000,等级为“低”;工资大于3000,小于5000,等级为”中”;工资大于等于5000,等级为高。并执行该存储过程。创建存储过程代码如下: create or replace procedure LMH_40,getgrade(v_d
4、epid im munber)asv_wage LMH_40.employees.wage%type;v_grade varchar2(5);beginselect wage into v_wagefrom LMH_40.employeeswhere emp_id=v_depid;v_grade:=casewhen v_wage<=3000 then '低'when v_wage>=3000 and v_wage<5000 then '中'when v_wage>=5000 then '高'end;dbms_output,
5、put_line('该员工工资等级为'|v_grade);end;执行存储过程代码如下:execute LMH_40.getgrade(3)执行结果如下:(3) 创建触发器MyTrigger,它的作用是当dhb.Departments中Dep_id列的值发生变化时,自动更新表Employees中的Dep_id列的值,从而保证数据完整性。程序代码如下:CREATE OR REPLACE TRIGGER LMH_40.MyTriggerAFTER UPDATE ON LMH_40.DepartmentsFOR EACH ROWBEGIN UPDATE LMH_40.Employee
6、s SET Dep_id = :new.Dep_id WHERE Dep_id = :old.Dep_id;END;验证触发器代码如下:UPDATE LMH_40.Departments SET Dep_id=200 WHERE Dep_id=1;Commit;SELECT Emp_name, Dep_id FROM LMH_40.Employees;执行结果如下:五、实验总结通过这次上机实验,我有以下收获:通过本次试验学习了对触发器,游标的创建和使用以及创建过程。但是还上机操作过程中还存在以下几个方面的不足:对这一部分的知识知之甚少,以后需对这部分知识加强学习和上机操作。六、教师评语教师签字
7、: 年 月 日 参考程序:典型游标FOR循环的语法说明如下:FOR <记录名> IN <游标名> LOOP 语句1; 语句2; 语句n;END LOOP; -结束程序体【例】/* 打开显示模式 */SET ServerOutput ON; DECLARE CURSOR MyCur IS -定义游标 SELECT Dep_id, Dep_Name FROM dhb.Departments;BEGIN -开始程序体 FOR var_DeptRecord IN MyCur LOOP /* 显示保存在记录变量var_DeptRecord中的数据 */ dbms_output.p
8、ut_line('部门编号:' | var_DeptRecord.Dep_Id |', 部门名称:' | var_DeptRecord.Dep_Name); END LOOP;END; -结束程序体p CREATE PROCEDURE语句来创建过程:CREATE OR REPLACE PROCEDURE<过程名> <参数列表> IS | AS <局部变量声明> BEGIN <过程体>END <过程名> ;【例】创建示例过程SetDepName,此过程的功能是根据参数修改表Departments中指定部门
9、的部门名称:CREATE OR REPLACE PROCEDURE DHB.SetDepName( v_DepId IN NUMBER, v_DepName IN VARCHAR2)ASBEGIN UPDATE DHB.Departments SET Dep_name = v_DepName WHERE Dep_Id = v_DepId;END;/执行存储过程:Execute DHB.SetDepName(1,'人事部')p CREATE TRIGGER语句来创建触发器:CREATE OR REPLACE TRIGGER <触发器名> BEFORE | AFTER
10、INSERT | DELETE | UPDATE OF column , column OR INSERT | DELETE | UPDATE OF column , column . ON <表名>|<视图名> FOR EACH ROW WHEN <条件表达式> <PL/SQL程序体>|call procedure_name例:创建触发器MyTrigger,它的作用是当dhb.Departments中Dep_id列的值发生变化时,自动更新表Employees中的Dep_id列的值,从而保证数据完整性。CREATE OR REPLACE TRIGGER DHB.MyTriggerAFTER UPDATE ON DHB.DepartmentsFOR EACH ROWBEGIN UPDATE DHB.Employees SET Dep
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025浙江宁波和丰产业园(集团)有限公司招聘3人备考考试试题及答案解析
- 深度解析(2026)《GBT 26846-2024电动自行车用电动机和控制器的引出线及接插件》
- 深度解析(2026)《GBT 26074-2010锗单晶电阻率直流四探针测量方法》
- 2025年驻马店确山县人民检察院招聘劳务派遣司机1名备考笔试试题及答案解析
- 深度解析(2026)《GBT 25833-2010公路护栏用镀锌钢丝绳》(2026年)深度解析
- 2025江西吉安市吉州区园投人力资源服务有限公司劳务外包人员招聘4人(十二)备考笔试题库及答案解析
- 2025四川九洲电器集团有限责任公司招聘市场开发2人备考笔试题库及答案解析
- 深度解析(2026)《GBT 25635.1-2010电解去毛刺机床 第1部分:精度检验》(2026年)深度解析
- 2025广西南宁隆安县残联招聘乡镇残疾人专职委员1人参考考试试题及答案解析
- 2025怀化市教育局直属学校公开招聘教职工65人参考考试题库及答案解析
- 2025年铁岭银行见习生招聘50人笔试备考试题及答案解析
- 老年人穿衣搭配课件
- 【2025年】嘉兴市委宣传部所属事业单位选聘工作人员考试试卷及参考答案
- 二手房意向金合同范本
- 充电桩与后台服务器通讯协议V2G
- 抵御宗教极端思想课件
- 体育会展融合策略分析报告
- 如何调解婚姻家庭纠纷讲座
- 重大活动网络安全保障方案
- 江苏省苏州市吴中学、吴江、相城区2024-2025学年化学九上期末质量检测模拟试题含解析
- 建筑公司发展策划方案
评论
0/150
提交评论