通过jdbc创建的Oracle函数处于无效状态

时间:2014-01-31 16:40:47

标签: java sql oracle jdbc

当我在SQL Developer中创建Oracle的函数时,一切正常,但是当我通过jdbc创建相同的函数时,它处于无效状态

以下是函数示例:

create or replace function TEST_FUNC return number is
begin
    return 100;
end;

Java代码:

Connection con = ...;
Statement stmt = con.createStatement();
stmt.execute(sql);

当我执行函数时:

select TEST_FUNC() from dual;

我收到错误:ORA-06575:包或函数TEST_FUNC处于无效状态

你能解释一下我做错了吗?

1 个答案:

答案 0 :(得分:1)

需要遵守功能才能使用它们。未编译的函数给出了此异常。还要确保查询中没有任何终止CR / LF。将其复制到文本编辑器(textpad)以查看是否有任何文件编辑器。