Sql 从DB2存储过程中检索返回值

Sql 从DB2存储过程中检索返回值,sql,stored-procedures,db2,return-value,Sql,Stored Procedures,Db2,Return Value,我有一个代码块,它在DB2存储过程中重复。 我想把它分离成一个新的过程,我可以用参数调用它并让它返回一个值 如何创建返回值的过程,以及如何从原始过程内部调用此过程?如何在从原始过程内部调用的过程中使用输出参数?调用proc是通过CALL命令完成的。在手册里;) 是的,只需要一个输出参数。 不过,我在手册或谷歌中找不到正确的调用语法 您可以这样创建过程: CREATE PROCEDURE myschema.add(IN a INT, IN b INT, OUT c INT) BEGIN S

我有一个代码块,它在DB2存储过程中重复。 我想把它分离成一个新的过程,我可以用参数调用它并让它返回一个值


如何创建返回值的过程,以及如何从原始过程内部调用此过程?

如何在从原始过程内部调用的过程中使用输出参数?调用proc是通过CALL命令完成的。在手册里;)

是的,只需要一个输出参数。 不过,我在手册或谷歌中找不到正确的调用语法

您可以这样创建过程:

CREATE PROCEDURE myschema.add(IN a INT, IN b INT, OUT c INT)
BEGIN
    SET c = a + b;
END
然后这样称呼它(这是我无法理解的):

然后输出在提供的
result
变量中结束。 您还可以有多个
OUT
参数以及
INOUT
参数


当然,现在看起来很明显

他们的文件很糟糕,对我一点帮助都没有。
DECLARE result INT DEFAULT 0;

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

-- result == 30