declare @add1sum int ,@add2sum int, @sql nvarchar(1000) set @sql=N'select @add1sum= sum(add1),@add2sum=sum(add2) from sum' exec sp_execute @sql,N'@add1sum int ouput,@add2sum int output',@add1sum output,@add2sum output print @add1sum
报错的提示是:消息 214,级别 16,状态 2,过程 sp_execute,第 1 行
过程需要类型为 'int' 的参数 '@handle'。
declare @add1sum int ,@add2sum int, @sql nvarchar(1000)
set @sql=N'select @add1sum=sum(add1),@add2sum=sum(add2) from sum;'--sum不能为表名
exec sp_executesql @sql,N'@add1sum int output,@add2sum int output',@add1sum output,@add2sum output--用sp_executesql