此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
我几乎不知所措。这似乎是一个相当简单的陈述。有人可以帮忙吗?
答案 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;
/