我有一个名为IP_ELEARN_PERSON.F_GET_PERSON(int, string, array)
的SQL函数。如何使用SQL调用具有数组作为参数的pl/SQL函数
现在我想直接从SQL Developer中运行这个功能,我试图执行这样的这个功能 -
select IP_ELEARN_PERSON.F_GET_PERSON(32433,'SOURCED',('ALL')) from dual;
现在的问题是,当我试图执行打开了该功能我得到的以下errror -
ORA-06553: PLS-306: wrong number or types of arguments in call to 'F_GET_PERSON'
06553. 00000 - "PLS-%s: %s"
*Cause:
*Action:
Error at Line: 3 Column: 8
我们使用CallableStatment的setArray方法类似this--
cstmt.setArray(4, new ObtainSqlArrayFromJava().returnSqlArray(
underlyingConn, roles));
从Java调用这个函数
所以我的疑问是,我曾经在查询中提到数组的权利?
我经历了许多堆栈溢出帖子,但没有任何事情是为数组写作的参数。