2008-12-17 45 views
2

我有一個在DB2存儲過程中重複的代碼塊。 我想將其分解成一個新的過程,我可以使用參數調用它並返回一個值。從DB2存儲過程中檢索返回值

如何創建一個過程來返回一個值,以及如何從我的原始過程中調用此過程?

回答

1

如何在您從原始proc中調用的proc中輸出參數?調用一個proc是通過CALL命令完成的。它在手冊中;)

3

是的,輸出參數就是它所需要的。 雖然我在手冊或谷歌找不到正確的調用語法。

您創建的程序是這樣的:

CREATE PROCEDURE myschema.add(IN a INT, IN b INT, OUT c INT) 
BEGIN 
    SET c = a + b; 
END 

然後調用它(這是我無法弄清楚):

DECLARE result INT DEFAULT 0; 

CALL myschema.add(10, 20, result); 

-- result == 30 

然後輸出在結束了提供的result變量。 您也可以有多個OUT params以及INOUT params。

現在看起來很明顯。 :)