• 标号和goto&null语句


    标号和GOTO 

    PL/SQL中GOTO语句是无条件跳转到指定的标号去的意思。语法如下:

    GOTO label;
    ......
    <<label>> /*标号是用<< >>括起来的标识符 */

    注意,在以下地方使用是不合法的,编译时会出错误。

    u 跳转到非执行语句前面。

    u 跳转到子块中。

    u 跳转到循环语句中。

    u 跳转到条件语句中。

    u 从异常处理部分跳转到执行。

    u 从条件语句的一部分跳转到另一部分。

    例12:

     1 DECLARE
     2    V_counter NUMBER := 1;
     3 BEGIN
     4    LOOP 
     5      DBMS_OUTPUT.PUT_LINE('V_counter的当前值为:'||V_counter);
     6      V_counter := v_counter + 1;
     7    IF v_counter > 10 THEN
     8        GOTO labelOffLOOP;
     9    END IF;
    10    END LOOP;
    11    <<labelOffLOOP>>
    12      DBMS_OUTPUT.PUT_LINE('V_counter的当前值为:'||V_counter);
    13 END;

    例13:

    DECLARE
       v_i NUMBER := 0;
       v_s NUMBER := 0;
    BEGIN
       <<label_1>>
       v_i := v_i + 1;
       IF v_i <= 1000 THEN
          v_s := v_s + v_i;
          GOTO label_1;
       END IF;
       DBMS_OUTPUT.PUT_LINE(v_s);
    END;

     NULL 语句 

    在PL/SQL 程序中,NULL语句是一个可执行语句,可以用 null 语句来说明“不用做任何事情”的意思,相当于一个占位符或不执行任何操作的空语句,可以使某些语句变得有意义,提高程序的可读性,保证其他语句结构的完整性和正确性。如:

    例14:

     1 DECLARE
     2     ...
     3 BEGIN
     4     ...
     5     IF v_num IS NULL THEN
     6     GOTO labelPrint;
     7     END IF;
     8  9   <<labelPrint>>
    10   NULL; --不需要处理任何数据。
    11 END;

    例15:

     1 DECLARE
     2    v_emp_id employees.employee_id%TYPE;
     3    v_first_name employees.first_name%TYPE;
     4    v_salary employees.salary%TYPE;
     5    v_sal_raise NUMBER(3,2);
     6 BEGIN
     7    v_emp_id := &emp_id;
     8    SELECT first_name, salary INTO v_first_name, v_salary
     9    FROM employees WHERE employee_id = v_emp_id;
    10    IF v_salary <= 3000 THEN
    11       v_sal_raise := .10;
    12       DBMS_OUTPUT.PUT_LINE(v_first_name||'的工资是'||v_salary
    13                                        ||'、工资涨幅是'||v_sal_raise);
    14    ELSE
    15       NULL;
    16    END IF;
    17 END;
  • 相关阅读:
    Ceph纠删码编码机制
    Vmware error:无法获得 VMCI 驱动程序的版本: 句柄无效。
    Virtual Box 安装过程(卸载Vmware后)
    解决安卓SDK更新dl-ssl.google.com无法连接的方法
    《中文核心期刊要目总览(2014年版)》——计算机、自动化类
    2014中国科技核心期刊(中国科技论文统计源期刊)名录——计算机类
    计算机专业方面的期刊
    Office 中的各种小tips(更新中)
    博客园添加背景音乐
    jmeter定时器
  • 原文地址:https://www.cnblogs.com/anzhi/p/7568381.html
Copyright © 2020-2023  润新知