oracle函数错误pls-00103

时间:2014-06-02 16:24:24

标签: oracle plsql syntax-error

编译此函数时收到以下错误:

  

错误(19,8):PLS-00103:遇到符号";"期待以下之一:loop

CREATE OR replace FUNCTION EXP_NOW
RETURN NUMBER
IS
  cprod   NUMBER;
  dexp    DATE;
  prodexp NUMBER := 0;
  CURSOR prodsd IS
    SELECT cod_prod,
           dat_exp
    FROM   produse;
BEGIN
    OPEN prodsd;

    LOOP
        FETCH prodsd INTO cprod, dexp;

        EXIT WHEN prodsd%NOTFOUND;

        IF ( dexp <= SYSDATE ) THEN
          prodexp := cprod;
        END IF;
    EXIT LOOP;

    CLOSE prodsd;

    RETURN prodexp;
END; 

有人能帮助我吗?这太令人沮丧了。

1 个答案:

答案 0 :(得分:1)

您可以尝试使用END LOOP代替EXIT LOOP吗?基本上,您使用LOOPEND LOOP来打开/关闭循环结构;你可以在里面使用EXIT WHEN