PLS-00103:当期望下列之一时遇到符号“文件结束”

时间:2016-10-12 13:17:44

标签: oracle function plsql compiler-errors

此PL / SQL声明:

FUNCTION f_comparestring(ps_string1 VARCHAR2, ps_string2 VARCHAR2) RETURN VARCHAR2 IS
          ps_match VARCHAR2(5);
        BEGIN
          IF (ps_string1 = ps_strin2) THEN
            ps_match := 'TRUE';
          ELSE
            ps_match := 'FALSE';
          END IF;
          RETURN ps_match;
        END;

引发以下错误:

  

PLS-00103:遇到以下其中一项时遇到符号“end-of-file”:begin end function pragma procedure

我几乎不知所措。这似乎是一个相当简单的陈述。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:2)

ps_string2中的ps_strin2不是IF。要创建功能,您需要使用create function

PL / SQL块之后还需要/
有关详细信息,请参阅:https://stackoverflow.com/a/10207695/330315

所以正确的陈述是:

CREATE FUNCTION f_comparestring(ps_string1 VARCHAR2, ps_string2 VARCHAR2) RETURN VARCHAR2 IS
  ps_match VARCHAR2(5);
BEGIN
  IF (ps_string1 = ps_string2) THEN
    ps_match := 'TRUE';
  ELSE
    ps_match := 'FALSE';
  END IF;
  RETURN ps_match;
END;
/