ORACLE PL SQL编程详解之三

ORACLE PL SQL编程详解之三

ID:41032429

大小:73.00 KB

页数:10页

时间:2019-08-14

ORACLE PL SQL编程详解之三_第1页
ORACLE PL SQL编程详解之三_第2页
ORACLE PL SQL编程详解之三_第3页
ORACLE PL SQL编程详解之三_第4页
ORACLE PL SQL编程详解之三_第5页
资源描述:

《ORACLE PL SQL编程详解之三》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、ORACLEPL/SQL编程详解之三作者:来源:2011-05-3023:14:01我要评论(4)核心提示:本篇主要内容如下:3.1条件语句3.2CASE表达式3.3循环3.4标号和GOTO3.5NULL语句介绍PL/SQL的流程控制语句,包括如下三类: l控制语句:IF语句l循环语句:LOOP语句,EXIT语句l顺序语句:GOTO语句,NULL语句 3.1条件语句 IF <布尔表达式> THEN  PL/SQL 和 SQL语句END IF;-----------------------IF <布尔表达式> THEN  PL/SQL 和 SQL语句ELSE  其它语句END IF;----

2、-------------------IF <布尔表达式> THEN  PL/SQL 和 SQL语句ELSIF < 其它布尔表达式> THEN  其它语句ELSIF < 其它布尔表达式> THEN-10-  其它语句ELSE  其它语句END IF;  提示:ELSIF不能写成ELSEIF例1: DECLARE    v_empno  employees.employee_id%TYPE :=&empno;    V_salary employees.salary%TYPE;    V_comment VARCHAR2(35);BEGIN   SELECT salary INTO v_sa

3、lary FROM employees    WHERE employee_id = v_empno;   IF v_salary < 1500 THEN       V_comment:= '太少了,加点吧~!';   ELSIF v_salary <3000 THEN      V_comment:= '多了点,少点吧~!';   ELSE      V_comment:= '没有薪水~!';   END IF;   DBMS_OUTPUT.PUT_LINE(V_comment);   exception     when no_data_found then        DBMS_

4、OUTPUT.PUT_LINE('没有数据~!');     when others then        DBMS_OUTPUT.PUT_LINE(sqlcode 

5、

6、 '---' 

7、

8、 sqlerrm);        END;  例2: DECLARE   v_first_name  VARCHAR2(20);   v_salary NUMBER(7,2);BEGIN   SELECT first_name, salary INTO v_first_name, v_salary FROM employees   WHERE employee_id = &emp_id;   DBMS

9、_OUTPUT.PUT_LINE(v_first_name

10、

11、'雇员的工资是'

12、

13、v_salary);   IF v_salary < 10000 THEN-10-      DBMS_OUTPUT.PUT_LINE('工资低于10000');   ELSE      IF 10000 <= v_salary AND v_salary < 20000 THEN         DBMS_OUTPUT.PUT_LINE('工资在10000到20000之间');      ELSE         DBMS_OUTPUT.PUT_LINE('工资高于20000');      END IF; 

14、  END IF;END;  例3:DECLARE   v_first_name  VARCHAR2(20);   v_hire_date DATE;   v_bonus NUMBER(6,2);BEGIN   SELECT first_name, hire_date INTO v_first_name, v_hire_date FROM employees   WHERE employee_id = &emp_id;   IF v_hire_date > TO_DATE('01-1月-90') THEN      v_bonus := 800;   ELSIF v_hire_date >

15、 TO_DATE('01-1月-88') THEN      v_bonus := 1600;   ELSE      v_bonus := 2400;   END IF;   DBMS_OUTPUT.PUT_LINE(v_first_name

16、

17、'雇员的雇佣日期是'

18、

19、v_hire_date                                    

20、

21、'、奖金是'

22、

23、v_bonus);END; 3.2CA

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。