游标报错!同时出现游标已存在和游标不存在!!!
- SQL code
ALTER PROC P2_OneKeyMergeTreasure( @roleID int )AS BEGIN declare @count int; select @count=count(1) from T2_RoleTrea where roleid=@roleID and placeType=1 if(@count<=1)begin return; end declare @srcID int; declare @destID int; declare @tmpID int; select top 1 @srcID=id from T2_RoleTrea where roleid=618 and placeType=1 order by id; declare mycurosr cursor for select id from T2_RoleTrea where roleid=618 and placeType=1 and id!=@srcID order by id; open mycursor fetch next from mycursor into @destID while @@fetch_status=0 begin exec P2_MergeTreasure @srcID,@destID,@tmpID out; set @srcID=@tmpID; fetch next from mycursor into @destID end close mycursor deallocate mycursorEND
错误消息 :
消息 16915,级别 16,状态 1,过程 P2_OneKeyMergeTreasure,第 21 行
名为 'mycurosr' 的游标已存在。
消息 16916,级别 16,状态 1,过程 P2_OneKeyMergeTreasure,第 23 行
名为 'mycursor' 的游标不存在。
消息 16916,级别 16,状态 1,过程 P2_OneKeyMergeTreasure,第 24 行
名为 'mycursor' 的游标不存在。
消息 16916,级别 16,状态 1,过程 P2_OneKeyMergeTreasure,第 31 行
名为 'mycursor' 的游标不存在。
消息 16916,级别 16,状态 1,过程 P2_OneKeyMergeTreasure,第 32 行
名为 'mycursor' 的游标不存在。
[解决办法]
你定义的,和你调用的,不是同一个名称.