有人知道是否允许这样做吗?
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/