把括号去掉。
如果没有返回值,用procedure代替function。
调用方法也一样。

解决方案 »

  1.   

    select fun(...) from dual;
      

  2.   

    select fun(...) from dual;
    结果是fun()的返回值吗?
      

  3.   

    1.把该死的括号去掉。
    2。最好加上返回值。function fun_a()
    return boolean is
    begn
    ...
    endprocedure pro_b()
    is
      ret boolean;
    begin
    ......
          ret:=funa;  
    .....
    end
      

  4.   

    procedure pro_b()
    is
    v_aa varchar2(20);--这个类型是函数返回值的数据类型
    begin
    ......
    v_aa:=funa(....); --参数之间用逗号分隔
    .....
    end