有人知道是否允许这样做吗?

IF CALL GET_RIGHT_NODE(edge) = 15
THEN
SELECT "IT WORKS";


我在此语法上遇到错误,是否可能有其他方法?

最佳答案

来自存储过程的返回值应捕获在OUT参数中(而来自用户定义函数的返回值可以捕获为@returnValue = function())。

因此,您的GET_RIGHT_NODE应该采用OUT参数并将其设置为返回值。

CREATE PROCEDURE GET_RIGHT_NODE
(
     @edge INT,
     @returnValue INT OUTPUT
)
AS

-- Definition of the proc.


那么您将调用以下过程:

DECLARE @returnValue INT

CALL GET_RIGHT_NODE(@edge, @returnValue)

IF (@returnValue = 15)
THEN
    SELECT 'IT WORKS'

关于mysql - 在IF语句MySQL中调用存储过程,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13639767/

10-11 05:12