ITPub博客

首页 > 数据库 > Oracle > PLSQL Language Reference-PL/SQL子程序-重载子程序

PLSQL Language Reference-PL/SQL子程序-重载子程序

原创 Oracle 作者:LuiseDalian 时间:2014-03-30 21:18:49 0 删除 编辑

重载子程序

PL/SQL允许重载嵌套的子程序、包子程序和类型方法。可以为多个不同的子程序使用同一个名称,但它们的形参在名称、数量、顺序和数据类型族上是不同的。(数据类型族是数据类型和它的子类型)。如果形参只是名称不同,则必须使用名称标记来指定相应的实参。

--子程序重载

DECLARE

    TYPE date_tab_typ IS TABLE OF DATE   INDEX BY PLS_INTEGER;

    TYPE num_tab_typ  IS TABLE OF NUMBER INDEX BY PLS_INTEGER;

 

    hiredate_tab  date_tab_typ;

    sal_tab       num_tab_typ;

 

    PROCEDURE initialize (tab OUT date_tab_typ, n INTEGER) IS

    BEGIN

        DBMS_OUTPUT.PUT_LINE('Invoked first version');

        FOR i IN 1..n LOOP

            tab(i) := SYSDATE;

        END LOOP;

    END initialize;

 

    PROCEDURE initialize (tab OUT num_tab_typ, n INTEGER) IS

    BEGIN

        DBMS_OUTPUT.PUT_LINE('Invoked second version');

        FOR i IN 1..n LOOP

            tab(i) := 0.0;

        END LOOP;

    END initialize;

 

BEGIN

    initialize(hiredate_tab, 50);

    initialize(sal_tab, 100);

END;

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

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

注册时间:2012-02-06

  • 博文量
    1986
  • 访问量
    5567028