zoukankan      html  css  js  c++  java
  • 游标 包

    --游标操作
    declare
    cursor c_sal is select empno,ename,sal from emp; begin for v_sal in c_sal loop dbms_output.put_line(v_sal.empno||' '||v_sal.ename||' '||v_sal.sal); end loop; end;
    --包定义
    CREATE
    OR REPLACE PACKAGE pkg_emp AS minsal NUMBER; maxsal NUMBER; e_beyondbound EXCEPTION; PROCEDURE update_sal( p_empno NUMBER, p_sal NUMBER); PROCEDURE add_employee( p_empno NUMBER,p_sal NUMBER); END pkg_emp;
    --包体
    CREATE OR REPLACE PACKAGE BODY pkg_emp
    AS
        PROCEDURE update_sal(p_empno NUMBER, p_sal NUMBER)
        AS
        BEGIN
          SELECT min(sal), max(sal) INTO minsal,maxsal FROM emp;
          IF p_sal BETWEEN minsal AND maxsal THEN
            UPDATE emp SET sal=p_sal WHERE empno=p_empno;
            IF SQL%NOTFOUND THEN
              RAISE_APPLICATION_ERROR(-20000,'The employee 
                                                                     doesn''t exist');
            END IF;
          ELSE
            RAISE e_beyondbound;
          END IF;
       EXCEPTION
          WHEN e_beyondbound THEN
             DBMS_OUTPUT.PUT_LINE('The salary is beyond bound! ');
        END update_sal;
      PROCEDURE add_employee(p_empno NUMBER,p_sal NUMBER)
    AS
     BEGIN
          SELECT min(sal), max(sal) INTO minsal,maxsal FROM emp;
          IF p_sal BETWEEN minsal AND maxsal THEN
             INSERT INTO emp(empno,sal) VALUES(p_empno,p_sal);
          ELSE
             RAISE e_beyondbound;
          END IF;
      EXCEPTION
        WHEN e_beyondbound THEN
          DBMS_OUTPUT.PUT_LINE('The salary is beyond bound! ');
      END add_employee;
    END pkg_emp;
    --包的使用
    BEGIN
      pkg_emp.update_sal(7844,3000);
      pkg_emp.add_employee(1111,4000);
    END;
  • 相关阅读:
    Java基本数据类型转换
    Java中的数据类型
    Java常见关键字
    HashMap源码分析(jdk 8)
    函数参数
    存储盘在系统中对应的naa号
    Python处理文本换行符
    Python文件操作中的方法:.write()换行
    此示例示意标准输出函数print的用法
    主机端查看到的wwpn 不是以:分割解决办法
  • 原文地址:https://www.cnblogs.com/mobai95/p/12557812.html
Copyright © 2011-2022 走看看