我正在尝试使用Oracle的用户定义函数和虚拟列,但我唯一的测试环境是SQL,而且我很难理解自己做错了什么,因为错误消息非常难以描述。
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
有人能成功吗,还是我要走死胡同?
发布于 2017-12-02 14:05:35
不使用参数的函数在名称后没有任何(空)括号
http://sqlfiddle.com/#!4/0c001/5
可以查询sys.user_errors表以获得编译错误的列表。“无效状态”意味着代码没有编译
https://stackoverflow.com/questions/47608650
复制相似问题