有人知道是否允许这样做吗?
IF CALL GET_RIGHT_NODE(edge) = 15
THEN
SELECT "IT WORKS";
我在这个语法上遇到错误,有可能以其他方式吗?
答案 0 :(得分:1)
存储过程的返回值应该在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'