用2个Exit,写在一起,作一条件满足就退出循环。
EXIT WHEN csr_dyc%NOTFOUND;
Exit when 变量4>变量3;

解决方案 »

  1.   

    有个全局变量@@FETCH_STATUS,它的值是SQL语句中最后的FETCH语句的结果,而循环执行的条件就是@@FETCH_STATUS = 0,具体的可参考SQL相关文档.
      

  2.   

    副作用?不会吧,只不过是多了一个退出条件而已。
    我以前做一过程,从一表中检索满足条件的信息组成字串,但如果满足条件的记录太多,就只显示前5条,再加上“还有更多……”字样。就是用两个Exit,一个是对游标本身处理的,如果游标记录少于等于5条就只显示找到的数据,如果多于5条了,就退出loop并关闭游标,一直在用。