浏览 290 次
|
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
时间:2008-04-26 关键字: mysql 游标 cursor 光标
在写MYSQL 存储过程当中遇到了一个问题:当条件1(cur1中存在一个cur2)和条件2(使用了DECLARE CONTINUE HANDLER FOR NOT FOUND )同时具备,内部循环cur2会造成cur2不能循环FETCH 比如下面代码: declare cur1 cursor for .....; declare cur2 cursor for .....; declare continue handler for not found set stop = true; open cur1 loop #(2) open cur2 do something... ......
本来一个合理的解决方法是 把cur2的定义放到#(2)处(网上有人写过这样的代码,把cur2作为一个局部的cursor 处理)这样就能够保证cur2打开的时候为止始终都是在开始位置,但是我也这样写了,出现了语法错误;而且另外一个问题是,当把cur2作为局部cursor处理,上面定义的...handler for not found ....是否会把cur2纳入处理范围,这个是不确定的 对于这种问题,不知道MYSQL该怎么处理的!
声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |


