关于sql exec返回的获取(常用常规动态SQL语句或者标量函数都可以)
-----------------------------------------------------------------------------------------------------------------
declare @sql
nvarchar(1024)
declare @payMoney decimal(10,2)
declare @getPay decimal(10,2)
set @sql = N' select @payMoney = dbo.CJ_parkingPay(1,getdate(),getdate())'
exec sp_executesql @sql,N'@payMoney decimal(10,2) output',@getPay output
select @getPay
-----------------------------------------------------------------------------------------------------------------
部分解析:
--1.@payMoney 定义变量来接收返回值(dbo.CJ_parkingPay返回),指定为输出变量
--2.@getPay 为sp_executesql执行接收到的值(你需要的返回值)
exec sp_executesql @sql,N'@payMoney decimal(10,2) output',@getPay output
执行效果:(如下)