实验五oracle综合性实验指导书.doc_第1页
实验五oracle综合性实验指导书.doc_第2页
实验五oracle综合性实验指导书.doc_第3页
实验五oracle综合性实验指导书.doc_第4页
实验五oracle综合性实验指导书.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

湖南科技学院计算机与通信工程系实 验 报 告实验项目PL/SQL编程课程名称Oracle数据库成 绩时 间2012年12月 日 第15周 第 9-12节地 点E305姓 名彭贵兵学 号201008003244班 级软件1002一、实验要求在Oracle 10g中综合运用PL/SQL中各种程序控制结构、系统函数、异常处理语句以及DML语句完成思考题部分的PL/SQL程序编写。二、实验目的(1) 熟练掌握PL/SQL程序设计的基本知识。(2) 熟练掌握PL/SQL中控制结构的使用。具体包括选择结构语句(IF语句和CASE语句),循环结构(四种循环结构)。(3) 熟练使用PL/SQL中系统函数。(4) 掌握PL/SQL中异常处理语句的使用(5) 掌握PL/SQL中SELECT语句和DML语句的综合运用。三、实验环境 硬件设备:PC机一台 操作系统:Windows XP 应用工具:Oracle 10g四、实验内容及结果(1) 以SYS用户登录系统。代码如下:sqlplus sys/ as sysdba(2) 创建用户,指定密码、表空间。用户名命名以本人姓名的缩写+_+学号最后两位。代码如下:create user pgb_44identified by peng123default tablespace userstemporary tablespace temp;(3) 为该用户授予sysdba、connect、resource权限。代码如下:grant sysdba to pgb_44;grant connect to pgb_44;grant resource to pgb_44;Exit;(4) 以自己的用户身份登录。代码如下: sqlplus pgb_44/peng123 as sysdba;(5) 在本用户方案中创建表departments, 并为该表输入若干数据。程序代码如下:create table pgb_44. departments ( dep_id number primary key, dep_name varchar2(20);insert into pgb_44. departments values (001,人事部);insert into pgb_44. departments values (002,办公室);insert into pgb_44. departments values (003,财务部);insert into pgb_44. departments values (004,技术部);insert into pgb_44. departments values (005,服务部);commit;select * from pgb_44. departments;执行结果如下:(6) 在本用户方案中创建表employees, 并为该表输入若干数据。程序代码如下:create table pgb_44.employees(emp_id number primary key,emp_name varchar2(20),sex varchar2(2),title varchar2(10),wage number,idcard varchar2(12),dep_id number, foreign key(dep_id) referencespgb_44.departments(dep_id);insert into pgb_44.employees values (1,彭贵兵,男,总经理,15000,08003244,001);insert into pgb_44.employees values (2,张宇,男,项目组长,6000,08003202,002);insert into pgb_44.employees values (3,施磊,男,职员,4000,08003227,003);insert into pgb_44.employees values (4,杨林峰,女,部门经理,8000,08003232,004);insert into pgb_44.employees values (5,陈月龙,女,部门经理,8000,08003241,005);insert into pgb_44.employees values (6,王啸坤,男,职员,3500,08003249,002);commit;col emp_name format a20col sex format a10col title format a10select * from pgb_44.employees;执行结果如下:(7) 编写PL/SQL程序,使用LOOPEXITEND语句计算1100之间所有偶数之和。程序代码如下:SET ServerOutput ON;DECLARE v_Num INTEGER := 0; v_Sum INTEGER := 0;BEGIN LOOP v_Sum := v_Sum + v_Num; dbms_output.put_line(v_Num); IF v_Num = 100 THEN EXIT; END IF; dbms_output.put_line( + ); v_Num := v_Num + 2; END LOOP; dbms_output.put_line( 1-100之间所有偶数之和是:); dbms_output.put_line(v_Sum);END;/ 执行结果如下:(8) 编写PL/SQL程序,查询5号员工工资,如果工资小于3000,则加200员工资,并提示信息“5号员工工资已更新。”,如果工资大于3000,则提示信息“5号员工工资为XXX,已达到规定标准。”程序代码如下:SET ServerOutput ON;DECLAREv_wages pgb_44.employees.wage%type;BEGIN SELECT wage INTO v_wagesFrom pgb_44.employeesWhere emp_id = 5;If v_wages 3000thenUpdate pgb_44.employees set wage = v_wages+200 where emp_id = 5;dbms_output.put_line ( 5号员工工资已更新);elsedbms_output.put_line ( 5号员工工资为 | v_wages);end if;commit;END;执行结果如下:(9) 编写PL/SQL程序,查询1号员工的工资,使用CASE语句输出其工资等级。工资小于等于3000,等级为“低”;工资大于3000,小于5000,等级为”中”;工资大于等于5000,等级为高;程序代码如下:Set serveroutput on;Declare v_wage pgb_44.employees.wage%type; v_grade varchar2(2);begin select wage into v_wage from pgb_44.employees where pgb_44.employees.emp_id= 1; v_grade:=case when v_wage=3000 and v_wage=5000 then 高 end; dbms_output.put_line(该员工工资等级为|v_grade);end;执行结果如下:(10) 编写PL/SQL程序,查询的departments表中是否有部门号为“6”的记录,如果没有,插入新记录部门号为6,部门名称为“后勤部”。如果有,显示查询结果。程序代码如下:set serveroutput on;declarev_name pgb_44.departments.dep_name%type;beginselect dep_name into v_namefrom pgb_44.departmentswhere dep_id=6;dbms_output.put_line(6| |v_name);exception when no_data_found then insert into pgb_44.departments values(6,后勤部); dbms_output.put_line(已插入!); when others then dbms_ou

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论