oracle综合性实验指导

更新时间:2023-11-13 05:10:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

湖南科技学院综合性实验指导书

实验名称:PL/SQL编程 实验项目性质:综合性 所涉及课程:Oracle数据库 计划学时:4

一、 实验目的

(1) 熟练掌握PL/SQL程序设计的基本知识。

(2) 熟练掌握PL/SQL中控制结构的使用。具体包括选择结构语句

(IF语句和CASE语句),循环结构(四种循环结构)。 (3) 熟练使用PL/SQL中系统函数。 (4) 掌握PL/SQL中异常处理语句的使用

(5) 掌握PL/SQL中SELECT语句和DML语句的综合运用。

二、 实验内容及步骤

1. 创建用户,指定密码、表空间。用户名命名以本人姓名的缩写+‘_’+学号最后两位。

2. 为该用户授予sysdba、connect、resource权限。 3. 以本人的用户身份登录。 4. 练习选择结构语句的使用方法。 1、条件语句IF 语法:

IF <条件表达式> THEN

<执行语句> …… <执行语句n> [ELSIF <条件表达式> THEN <执行语句> …… <执行语句n> …… ELSE <执行语句>] END IF;

2、分支语句CASE 语法: CASE <变量>

WHEN <表达式1> THEN 值1 WHEN <表达式2> THEN 值2 ……

WHEN <表达式n> THEN 值n ELSE 值n + 1 END;

例1:声明一个整型变量Num,使用IF语句判断Num变量是正数、负数或0。

SET ServerOutput ON; DECLARE

Num INTEGER := -11; BEGIN

IF Num < 0 THEN

dbms_output.put_line('负数'); ELSIF Num >0 THEN dbms_output.put_line('正数'); ELSE

dbms_output.put_line('0'); END IF; END;

例2、使用CASE语句根据给定的整数输出对应的星期值: SET ServerOutput ON; DECLARE

varDAY INTEGER := 3; Result VARCHAR2(20); BEGIN

Result := CASE varDAY WHEN 1 THEN '星期一' WHEN 2 THEN '星期二' WHEN 3 THEN '星期三' WHEN 4 THEN '星期四' WHEN 5 THEN '星期五' WHEN 6 THEN '星期六' WHEN 7 THEN '星期七'

ELSE '数据越界' END;

dbms_output.put_line(Result); END;

5. 练习循环结构语句的使用方法。 1、循环语句LOOP…EXIT…END LOOP <程序块1>

IF <条件表达式> THEN EXIT END IF <程序块2> END LOOP;

2、循环语句LOOP…EXIT WHEN…END LOOP <程序块1>

EXIT WHEN <条件表达式> <程序块2> END LOOP;

3、循环语句WHILE…LOOP…END LOOP WHILE <条件表达式> LOOP

<程序块> END LOOP;

4、循环语句FOR…IN…LOOP…END LOOP FOR <循环变量> IN <初始值> ..<终止值> LOOP <程序块> END LOOP;

例1、计算1到3的累加和。 SET ServerOutput ON; DECLARE

v_Num INTEGER := 1; v_Sum INTEGER := 0; BEGIN LOOP

v_Sum := v_Sum + v_Num; dbms_output.put_line(v_Num); IF v_Num = 3 THEN EXIT; END IF;

dbms_output.put_line(' + '); v_Num := v_Num + 1; END LOOP;

本文来源:https://www.bwwdw.com/article/zwqv.html

Top