Tableau en retour de fonction
Je crée un autre post pour que l'information soit retrouvable si jamais quelqu'un la cherche ;)
Je voudrais savoir s'il est possible de récupérer un tableau de type VARRAY avec jdbc.
Mes recherches sont un peu chaotiques sur le web.
Ma procédure crée un tableau de type VARRAY OF VARCHAR2 d'une taille définie par une variable; je m'explique en pl/sql:
Code:
1 2 3 4 5 6 7 8
| CREATE FUNCTION maFonction RETURN VARRAY AS
taille NUMBER;
BEGIN
taille:=ma_fonction_qui_détermine_la_taille;
tab VARRAY OF VARCHAR2(taille); //Pas très propre de déclarer ici mais je n'ai pas le choix ?
--Ajout des données dans tab
RETURN tab;
END; |
Ensuite en java:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| Array tab;
Connection co = OutilsJDBC.openConnection(url);
CallableStatement cst = null;
try {
cst = co.prepareCall("{?=call maFonction()}");
cst.registerOutParameter(1, java.sql.Types.ARRAY, );
cst.execute();
tab = cst.getArray(1);
cst.close();
}
catch (SQLException e) {
System.out.println(e);
} |
J'obtient une erreur:
Citation:
ORA-03115: type de réseau ou représentation non pris en compte
Quels sont vos avis ? C'est possible ?
Merci :)