ITPub博客

首页 > 数据库 > Oracle > PLSQL Language Referenc-PL/SQL静态SQL-静态SQL的描述-接受参数的显式光标

PLSQL Language Referenc-PL/SQL静态SQL-静态SQL的描述-接受参数的显式光标

原创 Oracle 作者: luisedalian 时间:2014-03-16 17:13:02 0 删除 编辑

接受参数的显式光标

可以创建带有常规参数的光标,然后在每次打开光标时传递不同的参数。

在光标查询中可以在能够使用常量的任何地方使用光标参数。在光标查询之外,不能引用光标参数。

DECLARE

    CURSOR c (job VARCHAR2, max_sal NUMBER) IS

        SELECT last_name, first_name, (salary - max_sal) overpayment

        FROM employees

        WHERE job_id = job

        AND salary > max_sal

        ORDER BY salary;

 

    PROCEDURE print_overpaid IS

        last_name_   employees.last_name%TYPE;

        first_name_  employees.first_name%TYPE;

        overpayment_      employees.salary%TYPE;

    BEGIN

        LOOP

            FETCH c INTO last_name_, first_name_, overpayment_;

            EXIT WHEN c%NOTFOUND;

            DBMS_OUTPUT.PUT_LINE(last_name_ || ', ' || first_name_ ||

                ' (by ' || overpayment_ || ')');

        END LOOP;

    END print_overpaid;

BEGIN

   

    DBMS_OUTPUT.PUT_LINE('工资高的ST_CLERK');  

    OPEN c('ST_CLERK', 5000);

    print_overpaid;

    CLOSE c;   

    DBMS_OUTPUT.PUT_LINE('工资高的SA_REP:');   

    OPEN c('SA_REP', 10000);

    print_overpaid;

    CLOSE c;

END;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/17013648/viewspace-1122705/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2012-02-06

  • 博文量
    1986
  • 访问量
    5688579