Подтвердить что ты не робот

Получить значение RETURN из хранимой процедуры в SQL

У меня есть хранимая процедура, где она заканчивается значением RETURN 0 или 1.

Я хочу использовать это значение в инструкции IF в другой хранимой процедуре.

Как я могу получить возвращаемое значение предыдущей хранимой процедуры и сохранить ее в переменной в последнем?

Я не мог найти ничего связанного. Все вопросы касаются получения значений RETURN на С#.

Я думал, может быть, что-то вроде этого:

SP_Two

DECLARE @returnValue INT
SET @returnValue = EXEC SP_One

IF @returnValue = 1
BEGIN
   --do something
END
ELSE
BEGIN
   --do something else
END
4b9b3361

Ответ 1

Это должно сработать для вас. Infact тот, который вы думаете, также будет работать: -

 .......
 DECLARE @returnvalue INT

 EXEC @returnvalue = SP_One
 .....

Ответ 2

Принятый ответ недействителен с двойным EXEC (нужен только первый EXEC):

DECLARE @returnvalue int;
EXEC @returnvalue = SP_SomeProc
PRINT @returnvalue

И вам все равно нужно вызвать PRINT (по крайней мере, в Visual Studio).

Ответ 3

Назначить после токена EXEC:

DECLARE @returnValue INT

EXEC @returnValue = SP_One