0

有人知道这是否允许吗?

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

我在这种语法上遇到错误,还有其他方法吗?

4

1 回答 1

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'
于 2012-11-30T05:57:10.060 回答