ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:99.72KB ,
资源ID:17535260      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17535260.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第三章 PLSQL编程上机操作Word格式文档下载.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

第三章 PLSQL编程上机操作Word格式文档下载.docx

1、1500 then shuilu:=3;susuankouchulu:4500 and gongzi=1500 then shuilu:=10;=105;9000 and gongzi=4500 then shuilu:=20;=555;35000 and gongzi=9000 then shuilu:=25;=1005;55000 and gongzi=35000 then shuilu:=30;=2755;80000 and gongzi=55000 then shuilu:=35;=5505; else shuilu:=45;=13505; end case;=gongzi*shuil

2、u/100-susuankouchulu; end if; dbms_output.put_line(king应缴纳的所得税是|v_tax);end;2更新某雇员的薪水 nianxianjiangjin NUMBER(10,2); ruzhishijian emp.hiredate%TYPE; select hiredate into ruzhishijianSCOTT if (sysdate-ruzhishijian=356*6) then nianxianjiangjin:=2000; else =1500; update emp set sal=nianxianjiangjin修改后3显

3、示某雇员相应的工资级别并显示所在部门名称、薪水和所在级别 jibie NUMBER(1); bumenName dept.dname%TYPE; xinshui emp.sal%TYPE; select dname,sal into bumenName,xinshui from emp e inner join dept d on e.deptno=d.deptno when xinshui=700 then jibie:=1;=4400 and xinshui=3201 then jibie:=2;=5000 and xinshui=4401 then jibie:=7000 and xin

4、shui=5001 then jibie:=4;=9999 and xinshui=7001 then jibie:=5;SCOTT所在部门是|bumenName|薪水|xinshui|级别|jibie);4为某雇员增加工资,每次增加100元,直到10000元停止 gongzi emp.sal%TYPE; loop=gongzi+100; exit when gongzi=10000; end loop; set sal=gongzi end;PL/Sql语句执行后,修改后的数据上机练习2DECLARE v_ename varchar2(4);BEGIN SELECT ename INTO v

5、_ename FROM emp WHERE empno=1234;雇员名:|v_ename);EXCEPTION WHEN NO_DATA_FOUND THEN雇员号不存在); WHEN value_error THEN姓名长度超过4位 WHEN OTHERS THEN错误号:|SQLCODE|错误描述:|SQLERRM);END; WHERE empno=7654; WHEN NO_DATA_FOUND THEN上机练习3 v_sal emp.sal%TYPE; v_deptno emp.deptno%TYPE; e_comm_is_null EXCEPTION; -定义异常类型变量 SEL

6、ECT sal,deptno INTO v_sal,v_deptno WHERE empno=7788; IF v_deptno=10 THEN IF v_sal10000 THEN UPDATE emp SET sal=10000 ELSE RAISE e_comm_is_null; END IF;雇员不存在!错误为:|SQLCODE|SQLERRM); WHEN e_comm_is_null THEN工资不低于10000元 WHEN others THEN出现其他异常解释1:以empno为7788为例,因为部门是“20”,则不显示解释2:修改代码: WHERE empno=7782; WH

7、ERE empno=7782; END IF 以empno为7782为例,因为部门是“10”,sal10000,做更新处理,不抛异常。解释3:再次执行以上的代码,因为部门是“10”,sal=10000,抛出异常,显示消息“工资不低于10000元”解释4: WHERE empno=3782; WHERE empno=3782;再次执行以上的代码,因为empno为3782的雇员不存在,抛出异常上机练习41使用游标计算所有雇员应缴纳的所得税 v_sum NUMBER(10,2): CURSOR emp_cursor IS SELECT sal FROM emp; OPEN emp_cursor; f

8、etch emp_cursor into gongzi; EXIT WHEN emp_cursor%NOTFOUND; v_sum:=gongzi+v_tax; close emp_cursor; dbms_output.put_line(v_sum);2使用游标更新所有雇员的薪水 SELECT hiredate FROM emp FOR UPDATE; for cur1 in emp_cursor loop where current of emp_cursor;执行代码后,数据变化如下:因为入职年限都大于6年,所以都修改成了15003使用游标查询并显示部门为“销售部”所有雇员相应的工资级别

9、并显示所在部门名称、薪水和所在级别 SELECT ename,sal,dname FROM emp e INNER join dept d ON e.deptno=d.deptno WHERE dname=SALES for cur1 in emp_cursor Loop when cur1.sal=4400 and cur1.sal=5000 and cur1.sal=7000 and cur1.sal=9999 and cur1.sal雇员姓名:|cur1.ename|cur1.sal|上机练习5CREATE OR REPLACE PROCEDURE fire_employee( eno

10、in emp.empno%type, -输入参数,雇员编号 on_Flag OUT number, -执行状态 os_Msg OUT VARCHAR2 -提示信息)is delete from emp where empno=eno; on_Flag: os_Msg:=成功 EXCEPTION=-1;该雇员不存在。=SQLCODE;=SQLERRM; v_no emp.empno%TYPE; on_Flag number(1); -执行状态 os_Msg VARCHAR2(200); -提示信息 v_no:=7788; fire_employee(v_no,on_flag,os_Msg); d

11、bms_output.put_line(on_flag); dbms_output.put_line(os_Msg);存储过程建立完毕 v_no employee.empno%TYPE;-调用get_sals存储过程,显示员工薪水CREATE OR REPLACE PROCEDURE get_sals( cur_salary OUT SYS_REFCURSOR,) AS OPEN cur_salary FOR SELECT empno,sal FROM employee;其他错误,与管理员联系。 v_empno employee.empno%type; v_sal employee.sal%type; emp_salary SYS_REFCURSOR; get_sals(emp_salary,on_Flag,os_Msg); IF on_flag=1 THEN LOOP FETCH emp_salary INTO v_empno, v_sal; EXIT WHEN emp_salary%notfound; DBMS_OUTPUT.PUT_LINE(v_empno|的薪水是 |v_sal); END LOOP; IF emp_salary%ISOPEN THEN CLOSE emp_salary;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1