代碼:
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;
很奇怪,返回值只有一個v_job,但是通過兩次輸出,卻能將djob也輸出,按我的理解,這個out參數(shù)應該具有和return相同的功能,是對return的一個補充,當要輸出多個值的時候,可以用out參數(shù)輸出,但是輸出類型只能與返回值類型一致,因此感覺這個功能其實局限性挺大