sql-server-2005 – 返回两个输出参数sp_executesql

我有动态查询我想从中获取两个输出参数我使用以下代码,但输出参数返回null
declare @query nvarchar(max);
declare @result int; 
declare @type int
declare @mainVarcharLength int; 

set @query = 'select   count(*),Type_Code from Customers   WHERE Customers.Cust_Name =  ''CUSTOMER 99''  '
set @query = @query + '  and Cus_Is_Active = 1  Group BY   Type_Code';
select  @query

EXEC sp_executesql @query,N'@result int OUTPUT,@type int OUTPUT',@result,@type

select @result
select @type

如何解决,以及如何传递多个输出参数

解决方法

您需要说明分配给输出内容;

set @query =’select @ result = count(*),@ type = Type_Code from Customers ….’

然后使用OUTPUT装饰输出;

EXEC sp_executesql @query,@result OUTPUT,@type OUTPUT

(您也可以通过“CUSTOMER 99”作为输入)

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...