请教斑竹,JPA createNativequery 调 Oracle 函数得问题
在网上看到版主发的用JPA 调 存储过程的方法,很受启发,于是试着在用JPA createNativequery 调 Oracle 函数,结果... :-(
Oracle函数定义如下:
CREATE OR REPLACE FUNCTION get_filelist (p_path IN VARCHAR2)
RETURN VARCHAR2
AS
LANGUAGE JAVA
NAME 'FileList.RunThis(java.lang.String) return String';
。。。
调用代码如下:
entityManager.createNativeQuery("{call get_filelist(?)}")
.setParameter(1, dirName)
.getSingleResult();
结果报:
严重: ORA-06550: 第 1 行, 第 7 列:
PLS-00221: 'GET_FILELIST' 不是过程或尚未定义
我在sqlplus中,desc get_filelist
得到:
参数名称 类型 输入/输出默认值?
------------------------------ ----------------------- ------ --------
P_PATH VARCHAR2 IN
请问高手,难道createNativeQuery只能Call 存储过程,不能call 函数吗? 请赐教。