在SQL中从存储过程获取RETURN值

我有一个存储过程,其结尾的RETURN值为0或1。

我想在另一个存储过程的IF语句中使用此值。

我怎样才能得到前存储过程的返回值,并将其保存在后者的variables?

我找不到任何相关的东西。 所有的问题都是关于在C#中获取RETURN值的。

我在想,也许是这样的:

SP_Two

DECLARE @returnValue INT SET @returnValue = EXEC SP_One IF @returnValue = 1 BEGIN --do something END ELSE BEGIN --do something else END 

这应该适合你。 事实上,你正在思考的也将工作: –

  ....... DECLARE @returnvalue INT EXEC @returnvalue = SP_One ..... 

接受的答案是无效的双EXEC(只需要第一个EXEC):

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

而且你仍然需要调用PRINT(至less在Visual Studio中)。

EXEC标记之后分配:

 DECLARE @returnValue INT EXEC @returnValue = SP_One