有点钻牛角尖了吧declare @ids nvarchar(50) set @ids = '65, 1235' exec sp_executesql N'declare @t nvarchar(2000) set @t=N''select * from fileiteration where fileiterationid in ('' + @sqlids + '')'' exec sp_executesql @t', N'@sqlids nvarchar(50)', @sqlids = @ids
declare @ids nvarchar(50) set @ids = '1,2' exec sp_executesql N'select * from table1 where id in ('+@sqlids+')'
libin_ftsafe(子陌红尘:当libin告别ftsafe) ( ) 信誉:105 Blog 2006-09-11 10:41:00 得分: 0
declare @ids nvarchar(50) set @ids = '1,2' exec sp_executesql N'select * from table1 where id in ('+@sqlids+')'--------------------------------------- 和我的前面的一样,sp_executesql只接受变量,不能+运算
set @ids = '1,2'
exec('select * from table1 where id in ('+@ids+')')
exec sp_executesql N'select * from table1 where id in ('+@ids+')'
exec sp_executesql N'exec(''select * from fileiteration where fileiterationid in ('' + @sqlids + '')'')',
N'@sqlids nvarchar(50)',
@sqlids = @ids
也谢谢libin_ftsafe(子陌红尘:当libin告别ftsafe) 但是,是否可以仅使用sp_executesql 而不用到 exec 的方法?求教社区的各位了,多谢!
exec sp_executesql N'declare @t nvarchar(2000) set @t=N''select * from fileiteration where fileiterationid in ('' + @sqlids + '')'' exec sp_executesql @t',
N'@sqlids nvarchar(50)',
@sqlids = @ids
set @ids = '1,2'
exec sp_executesql N'select * from table1 where id in ('+@sqlids+')'
declare @ids nvarchar(50)
set @ids = '1,2'
exec sp_executesql N'select * from table1 where id in ('+@sqlids+')'---------------------------------------
和我的前面的一样,sp_executesql只接受变量,不能+运算