2013-02-04 54 views
-1
一個Oracle功能

可能重複:
CALLING A STORED PROCEDURE IN TOAD如何調用多出來的參數

我給Oracle中的功能,因爲我已經證明我below.However不能使它跑。

FUNCTION GetAdres (pCif  NUMBER, 
        pAddressno NUMBER DEFAULT 0, 
        pAdrSerino NUMBER , 
        pRAdres  OUT T_ADRES%ROWTYPE, 
        pErrCode  OUT NUMBER, 
        pErrMes  OUT VARCHAR2 
        ) 
+0

你有什麼試過的?發生了什麼?你有什麼錯誤,如果有的話?你想從哪裏調用它,你將如何處理結果? –

回答

0

認爲你應該使用一個過程,不是功能

一個Oracle函數可以返回一個-and只有單值,用另一種語法。

CREATE FUNCTION GetAdres(parameter1 IN NUMBER, parameter2 IN NUMBER) 
    RETURN NUMBER 

事實上,你可以有OUT在Oracle功能(我的壞)的參數,但你需要一個獨特的返回類型反正。

可以完全在Oracle 過程使用多個OUT參數...

所以

解決方法1(我會去爲這一個)

使用程序代替功能

解決方案2

創建自定義類型並將其用作返回類型。

create a custom type 
CREATE TYPE my_type as object 
    (Adres  VARCHAR2(100), 
    ErrCode NUMBER, 
    ErrMes  VARCHAR2(250)); 


CREATE FUNCTION GetAdres (pCif        NUMBER, 
                    pAddressno NUMBER DEFAULT 0, 
                   pAdrSerino NUMBER) 
    RETURN my_type; 
相關問題