Declare @sql varchar(200) Set @sql='declare cur cursor for Select ID,Name from [USER]' Exec(@sql)open cur.....
open cur.....主要是这里怎么写.上面的到是会.
exec(' declare @a int,@b varchar(10) declare cur cursor for select * from tb open cur fetch next from cur into @a,@b while @@fetch_status=0 begin print @a print @b fetch next from cur into @a,@b endCLOSE cur DEALLOCATE cur ')
直接写啊: Declare @sql varchar(200) declare @id int, @name varchar(100) Set @sql='declare cur cursor for Select ID,Name from [USER]' Exec(@sql)open cur fetch from cur into @id,@name while @@fetch_status=0 begin 处理..... fetch from cur into @id,@name end close cur deallocate cur
declare @id int, @name varchar(100) declare cur cursor for Select ID,Name from [USER]open cur fetch from cur into @id,@name while @@fetch_status=0 begin 处理..... fetch from cur into @id,@name end close cur deallocate cur这样似乎更直接
再次支持直接写,并且 Set @sql='declare cur cursor for Select ID,Name from [USER]' 这个sql字符串最好也不要用了, 直接写sql得了
declare @a int,@b varchar(10)
declare cur cursor for select * from tb
open cur
fetch next from cur into @a,@b
while @@fetch_status=0
begin
print @a
print @b
fetch next from cur into @a,@b
endCLOSE cur
DEALLOCATE cur
')
Declare @sql varchar(200)
declare @id int, @name varchar(100)
Set @sql='declare cur cursor for Select ID,Name from [USER]' Exec(@sql)open cur
fetch from cur into @id,@name
while @@fetch_status=0
begin
处理.....
fetch from cur into @id,@name
end
close cur
deallocate cur
declare @id int, @name varchar(100)
declare cur cursor for Select ID,Name from [USER]open cur
fetch from cur into @id,@name
while @@fetch_status=0
begin
处理.....
fetch from cur into @id,@name
end
close cur
deallocate cur这样似乎更直接
Set @sql='declare cur cursor for Select ID,Name from [USER]'
这个sql字符串最好也不要用了,
直接写sql得了