31.PLSQL中的函數

一、存儲函數的定義

        函數是PLSQL中另一種子程序,與存儲過程不同的是,存儲函數具有返回值,就像C/C++中的函數一樣,可以通過函數返回某些值,我們先來看下下面定義的一個返回僱員薪資的函數:

create or replace function get_income(v_empno emp.empno%type)
return number
as
 v_income emp.sal%type;
begin
 select sal+nvl(comm,0) into v_income from emp where empno=v_empno;
 return v_income;
end;
/
        可以看到在定義函數時,和存儲過程最大的區別在於在as前定義了函數的返回值類型,如上面的例子我們定義了一個返回number類型數據的存儲函數。

        接下來我們可以使用以下的方法使用該函數:

二、存儲函數的使用

2.1 在PLSQL代碼塊中使用

declare
 v_income emp.sal%type;
begin
 v_income:=get_income(7499);
 dbms_output.put_line(v_income);
end;
/

2.2 在標準SQL語句中使用函數

select get_income(7499) from dual;




















發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章