欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    oracle第四次作业43991.pdf

    • 资源ID:79366981       资源大小:213.74KB        全文页数:9页
    • 资源格式: PDF        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    oracle第四次作业43991.pdf

    Oracle数据库基础 实验4 PL/SQL块结构,条件、循环语句的使用 【实验学时】2学时 【实验目的】1.学习匿名PL/SQL块的基本结构。2.了解PL/SQL的基本数据类型。3.掌握PL/SQL中变量和常量的定义方法。4.学会在PL/SQL程序中使用复合数据类型:记录和集合。5.学会使用selectinto语句返回一行数据。6.练习在PL/SQL中使用DML语句和动态SQL语句。7.熟练掌握PL/SQL中的选择和循环语句的使用。【实验内容】1.定义一个 PL/SQL 块,向屏幕输出 hello world!。1 declare 2 begin 3 dbms_output.put_line(hello world!);4*end;SQL/hello world!PL/SQL 过程已成功完成。2.定义一个 PL/SQL 块,将输入的字符串中大小写相互转换后向屏幕输出。例如,输入 abDCe,输出 ABdcE declare str1 varchar2(20):=&str1;str2 varchar2(2);str3 varchar2(20);len number(10);leng number(10);begin len:=1;leng:=length(str1);while len=a and str2=A and str2=Z then str3:=str3|lower(str2);end if;len:=len+1;end loop;dbms_output.put_line(str3);end;/1 declare 2 str1 varchar2(20):=&str1;3 str2 varchar2(2);4 str3 varchar2(20);5 len number(10);6 leng number(10);7 begin 8 len:=1;9 leng:=length(str1);10 while len=a and str2=A and str2/输入 str1 的值:dfaERERTdfdEdf 原值 2:str1 varchar2(20):=&str1;新值 2:str1 varchar2(20):=dfaERERTdfdEdf;DFAerertDFDeDF PL/SQL 过程已成功完成。3.定义一个 PL/SQL 块,完成如下功能:输入一个 3 位数,输出其各个数位上的数字。declare abc number(20):=&abc;a number(4);b number(4);c number(4);begin a:=floor(abc/100);b:=mod(floor(abc/10),10);c:=mod(abc,10);dbms_output.put_line(a);dbms_output.put_line(b);dbms_output.put_line(c);end;1 declare 2 abc number(20):=&abc;3 a number(4);4 b number(4);5 c number(4);6 begin 7 a:=floor(abc/100);8 b:=mod(floor(abc/10),10);9 c:=mod(abc,10);10 dbms_output.put_line(a);11 dbms_output.put_line(b);12 dbms_output.put_line(c);13*end;SQL/输入 abc 的值:346 原值 2:abc number(20):=&abc;新值 2:abc number(20):=346;3 4 6 PL/SQL 过程已成功完成。4.编写 PL/SQL 程序,程序的功能是:输入员工号,输出该员工经理的姓名。1 declare 2 v_empno emp.empno%type:=&v_emp;3 v_ename emp.ename%type;4 begin 5 select ename 6 into v_ename 7 from emp 8 where empno in(select mgr from emp where empno=v_empno);9 dbms_output.put_line(v_empno|manager is|v_ename);10*end;SQL/输入 v_emp 的值:7369 原值 2:v_empno emp.empno%type:=&v_emp;新值 2:v_empno emp.empno%type:=7369;7369 manager is FORD PL/SQL 过程已成功完成。SQL/输入 v_emp 的值:7566 原值 2:v_empno emp.empno%type:=&v_emp;新值 2:v_empno emp.empno%type:=7566;7566 manager is KING PL/SQL 过程已成功完成。5.编写 PL/SQL 程序,根据输入的员工号,若职务是CLERK提高工资 1%。工作为CLERK 1 declare 2 v_empno emp.empno%type:=&v_emp;3 v_sal emp.sal%type;4 begin 5 select sal into v_sal from emp where empno=v_empno;6 dbms_output.put_line(old sal is|v_sal);7 update emp 8 set sal=sal*1.01 9 where job=CLERK and empno=v_empno;10 select sal into v_sal from emp where empno=v_empno;11 dbms_output.put_line(new sal is|v_sal);12*end;13 /输入 v_emp 的值:7934 原值 2:v_empno emp.empno%type:=&v_emp;新值 2:v_empno emp.empno%type:=7934;old sal is1300 new sal is1313 PL/SQL 过程已成功完成。工作不是CLERK 1 declare 2 v_empno emp.empno%type:=&v_emp;3 v_sal emp.sal%type;4 begin 5 select sal into v_sal from emp where empno=v_empno;6 dbms_output.put_line(old sal is|v_sal);7 update emp 8 set sal=sal*1.01 9 where job=CLERK and empno=v_empno;10 select sal into v_sal from emp where empno=v_empno;11 dbms_output.put_line(new sal is|v_sal);12*end;13 /输入 v_emp 的值:7566 原值 2:v_empno emp.empno%type:=&v_emp;新值 2:v_empno emp.empno%type:=7566;old sal is2975 new sal is2975 PL/SQL 过程已成功完成。6.编写 PL/SQL 程序,程序的功能是:输入员工号,如果该员工工龄在 20 年之上,工资提高 10%。1 declare 2 v_empno emp.empno%type:=&v_emp;3 v_sal emp.sal%type;4 v_age number(4,2);5 begin 6 select sal into v_sal from emp where empno=v_empno;7 dbms_output.put_line(old sal is|v_sal);8 update emp 9 set sal=sal*1.1 10 where empno=v_empno and(sysdate-hiredate)/36520;11 select sal,(sysdate-hiredate)/365 age into v_sal,v_age from emp where empno=v_empno;12 dbms_output.put_line(work time is|v_age|new sal is|v_sal);13*end;SQL/输入 v_emp 的值:7844 原值 2:v_empno emp.empno%type:=&v_emp;新值 2:v_empno emp.empno%type:=7844;old sal is1500 work time is 29.74 new sal is1650 PL/SQL 过程已成功完成。7.编写 PL/SQL 程序,根据输入的员工号,输出该员工所在的部门名。1 declare 2 v_empno emp.empno%type:=&v_emp;3 v_dname dept.dname%type;4 begin 5 select dname 6 into v_dname 7 from dept 8 where deptno in(select deptno from emp where empno=v_empno);9 dbms_output.put_line(v_empno|is in|v_dname);10*end;SQL/输入 v_emp 的值:7369 原值 2:v_empno emp.empno%type:=&v_emp;新值 2:v_empno emp.empno%type:=7369;7369 is in RESEARCH PL/SQL 过程已成功完成。8.使用 index by 表复合数据类型,提取员工表 emp 中的员工姓名ename 和员工职位 job。1 declare 2 cursor c is select*from emp;3 type table_emp_type is table of emp%rowtype index by binary_integer;4 table_emp table_emp_type;5 i binary_integer:=1;6 num number;7 begin 8 select count(empno)9 into num 10 from emp;11 dbms_output.put_line(num);12 open c;13 for i in 1.num loop 14 fetch c into table_emp(i);15 dbms_output.put_line(table_emp(i).ename|,|table_emp(i).job);16 end loop;17*end;18 /14 SMITH,CLERK ALLEN,SALESMAN WARD,SALESMAN JONES,MANAGER MARTIN,SALESMAN BLAKE,MANAGER CLARK,MANAGER SCOTT,ANALYST KING,PRESIDENT TURNER,SALESMAN ADAMS,CLERK JAMES,CLERK FORD,ANALYST MILLER,CLERK PL/SQL 过程已成功完成。9.用动态 SQL 语句创建一个表格。(表结构自行设计)1 declare 2 table_name varchar2(20):=&table_name;3 line1 varchar2(10):=&line1;4 datatype1 varchar2(20):=number;5 line2 varchar2(20):=&line2;6 datatype2 varchar2(20):=varchar2(3);7 str_sql varchar2(500);8 begin 9 str_sql:=create table|table_name|(|line1|datatype1|,|line2|dataty 10 dbms_output.put_line(str_sql);11 execute immediate str_sql;12*end;SQL/输入 table_name 的值:person 原值 2:table_name varchar2(20):=&table_name;新值 2:table_name varchar2(20):=person;输入 line1 的值:name 原值 3:line1 varchar2(10):=&line1;新值 3:line1 varchar2(10):=name;输入 line2 的值:id 原值 5:line2 varchar2(20):=&line2;新值 5:line2 varchar2(20):=id;create table person(name number,id varchar2(3)PL/SQL 过程已成功完成。SQL desc person 名称 是否为空?类型 -NAME NUMBER ID VARCHAR2(3)【实验要求】1、独自认真完成上述应用性实验的题目。2、在 规 定 时 间 内 将“实 验 内 容”填 写 实 验 报 告 并 提 交 至ftp:/172.16.94.8。

    注意事项

    本文(oracle第四次作业43991.pdf)为本站会员(得**)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开