已经声明了,为什么还提示“必须声明变量@Num”
存储过程如下:
alter procedure getLoseNum
@TableName nvarchar(100)
as
create table #temptable(a int)
declare @char varchar(1000),@i int
declare @num int
exec('set @num=(select max(id) from '+@TableName+')')
set @i=1
while @i<=@num
begin
insert #temptable values (@i)
set @i=@i+1
end
exec ('select a from #temptable where a not in (select id from '+@TableName+')')