代碼:
create or replace function get_info
(pname varchar2,? djob out varchar2)
return varchar2
is
v_job emp.job%type;
begin
select a.job ,b.dname into v_job,djob
from emp a,dept b
where a.deptno=b.deptno
and upper(ename)=upper(pname);
return v_job;
end;
-----------------------------------------------------------調(diào)用
declare
djob varchar2(100);
out_job varchar2(100);
begin
out_job:=get_info('scott',djob);
dbms_output.put_line('a工作是:'||out_job);
dbms_output.put_line('b工作是:'||djob);
end;
很奇怪,返回值只有一個(gè)v_job临庇,但是通過兩次輸出,卻能將djob也輸出,按我的理解奏瞬,這個(gè)out參數(shù)應(yīng)該具有和return相同的功能昂灵,是對return的一個(gè)補(bǔ)充桶错,當(dāng)要輸出多個(gè)值的時(shí)候,可以用out參數(shù)輸出仔雷,但是輸出類型只能與返回值類型一致,因此感覺這個(gè)功能其實(shí)局限性挺大