我正在将一个Tsql存储过程迁移到PL / sql并遇到一个问题 – 在Oracle 10g中缺少CONTINUE关键字。
我已经读过Oracle 11g有这个新功能,但升级不是不幸的选择。
在10g中是否有CONTINUE的替代方法?我不认为将SP的逻辑重构为一种解决办法是不实际的,因为我有一个外环,一个IF,然后一个嵌套的IF,然后CONTINUE在IF中的语句块的末尾。
任何帮助将非常感谢,欢呼。
您可以使用
goto and labels模拟继续。
DECLARE done BOOLEAN; BEGIN FOR i IN 1..50 LOOP IF done THEN GOTO end_loop; END IF; <<end_loop>> -- not allowed unless an executable statement follows NULL; -- add NULL statement to avoid error END LOOP; -- raises an error without the prevIoUs NULL END;