SQLFiddle中的Oracle用户定义函数

时间:2017-12-02 13:58:17

标签: sql oracle function sqlfiddle

我试图使用Oracle的用户定义函数和虚拟列,但我唯一的测试环境是SQL Fiddle,我很难理解我做错了什么错误信息非常不明白。

ORA-06575: Package or function COUNTER is in an invalid state

我尝试过来自不同网站的各种调整和复制粘贴尝试,但无法让功能和sqlfiddle一起玩得很好......

create table test (
    x number
)
//

create
  function counter()
    return number is v_result NUMBER;
    begin
        SELECT COUNT(*) INTO v_result FROM test;
        return v_result;
    end;
//

select test.*, counter() from test
//

http://sqlfiddle.com/#!4/0c001

任何能够做这项工作的人,还是我都会走向死胡同?

1 个答案:

答案 0 :(得分:3)

不带参数的函数在名称

后面没有任何(空)括号

http://sqlfiddle.com/#!4/0c001/5

您可以在sys.user_errors表中查询编译错误列表。 “无效状态”表示代码未编译