SQLServer2008上游标的使用

SQLServer2008下游标的使用
SqlServer下的的SQL语法跟Oracle中的SQL语法还是有很大不同的,这里记录一下在SqlServer下游标的使用方法,以备后用。

declare 
@str varchar(100),
@n varchar(50),
@f varchar(3)
declare mycursor Cursor Scroll for select name from sys.tables
open mycursor
fetch next from mycursor into @n;
while(@@FETCH_STATUS=0)
begin
	set @str = 'drop table ';
	set @f = SUBSTRING(@n,1,3)
	if @f <> 'ACL' and @f <> 'BF_'
		begin
			set @str = @str + @n
			exec(@str)
		end	
	fetch next from mycursor into @n;	
end
close mycursor
deallocate mycursor