此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;
引发以下错误:
我很茫然。这似乎是一个相当简单的声明。有人可以帮忙吗?
最佳答案
它应该是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;
/
关于oracle - PLS-00103 : Encountered the symbol “end-of-file” when expecting one of the following,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39999633/