Create Procedure GetMaxID
@TableName varchar(100), @ID int output
as
begin
declare @sql nvarchar(1000)
set @sql='select @ID = max(ID) from '+@TableName
exec sp_executesql @sql,N'@id int output',@id output
end
exec sp_executesql @sql,N'@id int output,@a ...',@id output...
@TableName varchar(100), @ID int output
as
begin
declare @sql nvarchar(1000)
set @sql='select @ID = max(ID) from '+@TableName
exec sp_executesql @sql,N'@id int output',@id output
end
exec sp_executesql @sql,N'@id int output,@a ...',@id output...
create proc test
@tablename varchar(20), --表名
@total int output --返回值
as
begin
declare @sqltext nvarchar(2000)
set @sqltext='select @a=count(*) from '+@tablename
exec sp_executesql @sqltext,'@a int output',@total --返回@total
endDrop proc test
...
OPEN t_cursorFETCH NEXT FROM t_cursor INTO @tname, @tablenamedeclare @money moneywhile @@FETCH_STATUS = 0
BEGIN
set @s='select sum(money) as a from '+@tablename
exec sp_executesql @s,N'@money money output',@money outputFETCH NEXT FROM t_cursor INTO @tname, @tablename
ENDCLOSE t_cursor
...
OPEN t_cursorFETCH NEXT FROM t_cursor INTO @tname, @tablenamedeclare @money moneywhile @@FETCH_STATUS = 0
BEGIN
set @s=N'select @money=sum(money) from '+@tablename
exec sp_executesql @s,N'@money money output',@money outputFETCH NEXT FROM t_cursor INTO @tname, @tablename
ENDCLOSE t_cursor
declare @monty int
set @sql='select @money=sum(money) from '+@tablename
exec sp_executesql @sql,N'@money int output',@money output
select @money