oracle數據庫中的存儲函數


oracle中的存儲函數,和系統內的函數類似,可以像調用系統函數一樣調用存儲函數。它與存儲過程的唯一區別就是存儲過程沒有return返回值,存儲函數可以與存儲過程互換,存儲函數可以在存儲過程中調用。

存儲函數的基本語法結構:

    create [or replace] function 函數名[(參數名 in|out 參數類型)]   return 返回值數據類型 is

        聲明變量部分;
    begin
      代碼塊;
      return 結果變量;
    end [函數名];


例如:查指定員工的年薪

創建存儲函數:

    create or replace function yearsal(eno in emp.empno%type) return number is
      psal emp.sal%type;
      pcomm emp.comm%type;
    begin
      select emp.sal into psal from emp where empno = eno;
      return psal * 12 + nvl(pcomm, 0);
    end yearsal;

調用存儲函數:

    declare
    begin
      dbms_output.put_line(yearsal(7369));
    end;

像系統函數一樣調用存儲函數:    select yearsal(7369) from dual;

結果:

員工年薪
----------
32400

以上就是存儲函數的基本知識和應用。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM