参考:declare @tcnt int declare @paras varchar(100) DECLARE @SQLString NVARCHAR(500) set @paras ='1,3,5' set @sqlstring=N'select @cnt=count(*) from sysobjects where id in ('+@paras+')'set @tcnt=0 execute sp_executesql @sqlstring, N'@cnt int output', @cnt=@tcnt output select @tcnt select * from sysobjects 参考: Create Procedure GetMaxID @TableName varchar(100), @ID int output as begin declare @sql nvarchar(1000) set @sql='select @ID = count(ID) from '+@TableName exec sp_executesql @sql,N'@id int output',@id output end
declare @ColName varchar(20),@sql nvarchar(4000),@ResultStr varchar(8000)set @ColName='MIName' set @sql=N'declare @ResultStr varchar(8000) @ResultStr='''' select @ResultStr=@ResultStr+' +@ColName+'+''<br>'' from TBidMaterial a join TMaterialInfo b on a.MIID=b.MIID and a.QuoteID=2 set @out=@ResultStr'exec sp_executesql @sql,N'@a varchar(8000) output',@ResultStr output select @ResultStr
declare @ColName varchar(20),@sql nvarchar(4000),@ResultStr varchar(8000)set @ColName='MIName' set @sql=N'declare @ResultStr varchar(8000) set @ResultStr='''' select @ResultStr=@ResultStr+' +@ColName+'+''<br>'' from TBidMaterial a join TMaterialInfo b on a.MIID=b.MIID and a.QuoteID=2 set @out=@ResultStr'exec sp_executesql @sql,N'@a varchar(8000) output',@ResultStr output select @ResultStr
declare @paras varchar(100)
DECLARE @SQLString NVARCHAR(500)
set @paras ='1,3,5'
set @sqlstring=N'select @cnt=count(*) from sysobjects where id in ('+@paras+')'set @tcnt=0
execute sp_executesql
@sqlstring,
N'@cnt int output',
@cnt=@tcnt output
select @tcnt
select * from sysobjects
参考:
Create Procedure GetMaxID
@TableName varchar(100), @ID int output
as
begin
declare @sql nvarchar(1000)
set @sql='select @ID = count(ID) from '+@TableName
exec sp_executesql @sql,N'@id int output',@id output
end
set @sql=N'declare @ResultStr varchar(8000) @ResultStr='''' select @ResultStr=@ResultStr+' +@ColName+'+''<br>'' from TBidMaterial a join TMaterialInfo b on a.MIID=b.MIID and a.QuoteID=2 set @out=@ResultStr'exec sp_executesql @sql,N'@a varchar(8000) output',@ResultStr output
select @ResultStr
set @sql=N'declare @ResultStr varchar(8000) set @ResultStr='''' select @ResultStr=@ResultStr+' +@ColName+'+''<br>'' from TBidMaterial a join TMaterialInfo b on a.MIID=b.MIID and a.QuoteID=2 set @out=@ResultStr'exec sp_executesql @sql,N'@a varchar(8000) output',@ResultStr output
select @ResultStr