想要得到如下的效果,该怎样实现?declare @field1 varchar(20)
declare @field2 varchar(20)
declare @sql nvarchar(200)
create table tb(field1 varchar(20),field2 varchar(20))
insert into tb select '100','200' union all
select '300','400'
set @sql = 'select @field1 = field1, @field2 = field2 from tb'
exec sp_executesql @sql,N'@field1 varchar(20) output',@field1 output,
N'@field2 varchar(20) output',@field2 output
drop table tb以上报错,提示:必须声明变量 '@field2'。
declare @field2 varchar(20)
declare @sql nvarchar(200)
create table tb(field1 varchar(20),field2 varchar(20))
insert into tb select '100','200' union all
select '300','400'
set @sql = 'select @field1 = field1, @field2 = field2 from tb'
exec sp_executesql @sql,N'@field1 varchar(20) output',@field1 output,
N'@field2 varchar(20) output',@field2 output
drop table tb以上报错,提示:必须声明变量 '@field2'。
@field2 varchar(20) output,@field2 varchar(20) output
exec sp_executesql @sql,N'@field1 varchar(20) output,@field2 varchar(20) output',@field1 output,@field2 output
@field2 output,@field2 output