Ich habe eine SQL-Funktion mit dem Namen IP_ELEARN_PERSON.F_GET_PERSON(int, string, array)
.So rufen Sie eine PL/SQL-Funktion mit Array als Argument mit SQL
Jetzt möchte ich diese Funktion direkt von SQL-Entwickler laufen und ich versuche, diese Funktion wie folgt auszuführen -
select IP_ELEARN_PERSON.F_GET_PERSON(32433,'SOURCED',('ALL')) from dual;
Das Problem ist jetzt, wenn ich diese funtion auszuführen versuche ich das immer bin folgende 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
Wir waren diese Funktion von Java-Aufruf unter Verwendung setArray Methode des CallableStatment wie this--
cstmt.setArray(4, new ObtainSqlArrayFromJava().returnSqlArray(
underlyingConn, roles));
Also meine Zweifel ist, ist die Art, wie ich das Array in der Abfrage verwendet, richtig?
Ich ging durch viele Stack Overflow Posts, aber nirgendwo wurde etwas für Arrays als Argument geschrieben.