创建或替换函数 check_func_s ( 数值值 ) 返回布尔值 开始 如果 val 不为空则 返回真; 万一; 结尾; /
选择 检查_功能_S(1) 从 双;
它给出了错误
ORA-00902: 无效的数据类型
00902. 00000 - “无效的数据类型”
*原因:
*行动:
错误行:24 列:5
请建议如何使其发挥作用
选择 检查_功能_S(1) 从 双;
布尔值只能在PL/SQL层使用,不能在SQL层使用。 因此,如果您希望此函数使用“select from Dual”语句返回值,那么您将需要重新定义该函数以返回 varchar2 并返回值“true”或“false”。 所以在你的情况下
CREATE OR REPLACE FUNCTION check_func_s (
val IN NUMBER
) RETURN VARCHAR2 IS
BEGIN
IF val IS NOT NULL THEN
RETURN 'True';
ELSE RETURN 'False';
END IF;
END;