Bonjour,

je travaille actuellement sur une migration de base de données Oracle vers Postgresql dans le cadre d'une application Java-GWT.
Un problème me bloque sur les procédures stockées :

- j'ai des procédures créées de la sorte : CREATE OR REPLACE FUNCTION schema.nomProcedure(OUT code text, OUT erreur text, IN numero text).
Le code SQL de la procédure affiche à la fin : ALTER FUNCTION schema.nomProcedure(text)
Seul les paramètres IN comptent alors.

- puisque je suis en Java, je les appelle depuis le pool de connexion JDBC.
Le problème est que cela génère l'erreur suivante :
org.postgresql.util.PSQLException: ERREUR: la fonction schema.nomProcedure(text, text, text) n'existe pas
[java] Indice?: Aucune fonction ne correspond au nom donn? et aux types d'arguments.
[java] Vous devez ajouter des conversions explicites de type.

Cela signifie alors que les paramètres OUT ne doivent pas être mentionnés dans l'appel = > SELECT schema.nomProcedure('2'); /* ?????? */
Cette solution génère une erreur également.


Au final, je ne parviens pas à appeler les procédures stockées possédant des paramètres OUT. J'ai 378 procédures, avec des dépendances entre procédures.
Faut-il supprimer tous les paramètres OUT ? Les remplacer par du IN ? Les remplacer par ni IN ni OUT ?

N.B : le INOUT ne fonctionne pas non plus.

Merci.