Create Proc test_sp2
@spName varchar(10)
@R varchar(100) output
as
exec @R=test_sp1,@R output

解决方案 »

  1.   

    create proc test_sp1
    @R varchar(100) output
    AS
    set @R='返回值'
    goCreate Proc test_sp2
    @spName varchar(10),
    @R varchar(100) output
    as
    declare @s nvarchar(4000)
    set @s='exec ['+@spName+'] @r out'
    exec sp_executesql @s,N'@r varchar(100) output',@r out
    go
    --在SQL查询分析器中或程序中的调用示例
    declare @r varchar(100)
    exec test_sp2 'test_sp1',@r output
    print @r