• /  22
  • 下载费用: 11.90积分  

实验6 过程_函数和程序包

'实验6 过程_函数和程序包'
实验6 过程、函数和程序包姓名:学号:专业:软件工程(金融)班级:同组人:无实验日期:2013/7/19【实验目的与要求】n 掌握过程的创建与调用n 掌握PL/SQL函数的编写与调用n 熟悉程序包的使用【实验内容与步骤】6.0.实验准备工作:PL/SQL程序文件的编辑与执行1.使用文档编辑器编辑以下文件,并保存为aa.sql:2.以scott身份登录,在SQL Plus中执行@aa命令运行程序:注:测试时,文件名请用全名(即包含路径,如:@c:\aa)给出运行结果:6.1.存储过程1.最简单的存储过程编写与执行(1)创建测试表drop table Exam_Table;create table Exam_Table( e_id number(5), e_name varchar2(20), e_salary number(8,2));(2)创建存储过程create or replace procedure insert_salary (v_id number,v_name varchar2,v_salary number) isbegin insert into Exam_Table values (v_id,v_name,v_salary); commit; dbms_output.put_line('数据插入成功');end;/ (3) 执行(调用)存储过程exec insert_salary(6,'g',2000);(4)查询执行结果select * from Exam_Table;给出执行的最后结果: 2.参数的使用:in/out/in out参数阅读以下程序,理解不同类型参数使用的不同,运行程序,给出运行结果。(1) 用两个参数:in ,out 传入一个姓名,输出:某某人你好:create or replace procedure mp(v_in varchar2,v_out out varchar2)isbegin v_out:=v_in||'你好';end;declare v_name varchar2(10);begin mp('scott',v_name); dbms_output.put_line(v_name);end;--输出:scott你好给出运行结果:(2)-- in out类型参数create or replace procedure mp(name_in in varchar2, name_out out varchar2, name_in_out in out varchar2) isbegin dbms_output.put_line(name_in); name_out := '返回的参数name_out是' || name_in; name_in_out := 'name_in_out是' || name_in || name_in_out;end;给出运行结果:(3)定义一个返回多个值的存储过程。create or replace procedure p_test(name out varchar2,age out number,sex out varchar2,sal out number)isbeginname:='scott';age:=26;sex:='男';sal:=8000;end;declare v_name varchar2(20); v_age number(10); v_sex varchar2(5); v_sal number(10);begin p_test(v_name,v_age,v_sex,v_sal); dbms_output.put_line(v_name); dbms_output.put_line(v_age); dbms_output.put_line(v_sex); dbms_output.put_line(v_sal);end;给出运行结果: 3.练习:根据测试表完成下列程序的编写,并给出测试结果:(1)已知有如下表和相应的数据,请根据要求完成实验。create table departments( DEPARTMENT_ID NUMBER(4) primary key, DEPARTMENT_NAME VARCHAR2(30), MANAGER_ID NUMBER(6), LOCATION_ID NUMBER(4) );insert into departments values(1,'技术部',1,1);insert into departments values(2,'人事部',2,2);insert into departments values(3,'市场部',3,3);insert into departments values(4,'财务部',4,4);根据上表结构编写存储过程,实现以下功能,并给出测试结果。1)根据指定的部门更新指定部门名(DEPARTMENT_NAME)的管理者(MANAGER_ID)id。2)根据部门ID(DEPARTMENT_ID) 删除指定部门(2)编写给雇员增加工资的存储过程CHANGE_SALARY,通过IN类型的参数传递要增加工资的雇员编号和增加的工资额。(操作数据库表为EMP).1)编写存储过程CHANGE_SALARY,给出程序代码:2)调用存储过程:EXECUTE CHANGE_SALARY(7788,80)6.2.函数1.最简单的函数:--简单函数(1)创建函数create function f(name in varchar2)return varchar2isbegin return name;end;(2)调用函数declare v_name varchar2(10);begin v_name:=f('scott'); dbms_output.put_line(v_name);end;给出运行结果:2.稍微复杂的函数--编写函数create or replace function salarylevel(salary number) return varchar2 isbe
关 键 词:
实验6过程_函数和程序包
 天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:实验6 过程_函数和程序包
链接地址: https://www.wenku365.com/p-39767914.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服点击这里,给天天文库发消息,QQ:1290478887 - 联系我们

本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有【成交的100%(原创)】。本站是网络服务平台方,若您的权利被侵害,侵权客服QQ:1290478887 欢迎举报。

1290478887@qq.com 2017-2027 https://www.wenku365.com 网站版权所有

粤ICP备19057495号 

收起
展开