Sybase 过程中嵌套游标的问题
大概是这样一个嵌套游标组成的循环:declare 外层 cursor for select ....
open 外层
fetch 外层
while while @@sqlstatus = 0
begin
.
.
.
declare 内层 cursor for select ....
open 内层
fetch 内层
while while @@sqlstatus = 0
begin
.
.
.
fetch 内层
end
close 内层
fetch 外层
end
close 外层
但每次外层循环出现,内层游标的重复定义,出如下错:
Server Message:Number563, Severity16
Server 'onlnserver', Procedure 'tele_comm_reminder', Line 294:
There is already another cursor with the name 'cur_debitreminder' at the nesting level '2'.
CU 上的C版很活跃,Sybase版太冷清了... 没有人遇到过这样的错误吗?提提意见也行啊,发表一下自己的看法也行啊...
集思广益嘛, 唉....我问题没有描述清楚? shit, 网上搜了一下终于找到了答案。
原来内层游标用完关闭后需要释放它在内存中占用的空间(deallocate cursor 内层)
这样外层循环不会导致内层游标的重复定义了。
页:
[1]