如何解决PL/SQL函数中的PLS-00103编译错误
解决PL/SQL函数判断奇偶性的PLS-00103编译错误
你的代码出现PLS-00103错误的核心原因是:PL/SQL不支持%作为取模运算符,你误用了其他编程语言的语法逻辑。在PL/SQL中,计算两个数的余数需要使用内置的MOD()函数。
修正后的完整代码如下:
CREATE OR REPLACE FUNCTION YES_EVEN(p_val IN NUMBER) RETURN BOOLEAN AS v_result BOOLEAN:= FALSE; BEGIN IF MOD(p_val, 2) = 0 THEN v_result := TRUE; END IF; RETURN v_result; END; /
如果想简化代码逻辑,也可以直接返回判断结果,省去中间变量:
CREATE OR REPLACE FUNCTION YES_EVEN(p_val IN NUMBER) RETURN BOOLEAN AS BEGIN RETURN MOD(p_val, 2) = 0; END; /
内容的提问来源于stack exchange,提问作者Varun Grover
相关产品推荐
相关产品推荐

