日期:2014-05-18  浏览次数:20495 次

接收存储过程返回值
我在一个存储过程里有个参数要接收另一个存储过程的返回值,但是那个存储过程没有明确指明返回参数,我该怎么接收这个返回值?
例:sp1
  Create Procedure test1_sp
  @aa int
as 
  begin
  if (condition1)
  begin
  select t1.aa + t2.bb as ReturnD
  from t1 inner join t2
  on t1.id =t2.id
  where t1.aa = @aa 
  end
  if (condition2)
  if 
  else
  select 'no match' as ReturnD
  end  

ReturnD 就是这个存储过程的返回值,我在另一个存储过程里怎么接收这个值?
 sp2: declare @recieve varchar, @test int
  exec sp1 @test 

谢谢!


------解决方案--------------------
SQL code
Create table #tempTable (recieve varchar(50),test int)
insert into #tempTable(recieve,test) exec test1_sp
select #tempTable

------解决方案--------------------
daclare @return_value int
exec @return_value = dbo.test1_sp
print @return_value