Comment accepter le curseur REF en JAVA sans importer le package Oracle
Question
J'écris un programme JAVA en utilisant JDBC pour la connectivité de la base de données, j'appelle une procédure stockée dans celle qui renvoie ORACLE REF CURSOR. Est-il possible de gérer cela sans importer des PACKAGES ORACLE?
La solution
Je pense que j’ai essayé de faire cela il ya quelque temps et que j’ai en quelque sorte abandonné (je suppose que vous pourriez déterminer quelle est la valeur int de OracleTypes.REF_CURSOR et l’utiliser ensuite, mais c’est un hack). Si vous en avez la patience, vous pouvez définir un type d’enregistrement (ou d’objet) et définir le curseur comme un curseur de type car il peut être converti à l’aide de table en une valeur sélectionnable comme les tables ordinaires, c.-à-d.
select * from table( sp_returning( ? ) )
J'ai fait une recherche rapide sur le curseur ref et jdbc. Il semble que ce soit une extension oracle, ce qui expliquerait pourquoi il n’existe aucun moyen standard d’accéder aux données.
Autres conseils
Faire
select * from table( sp_returning( ? ) )
est plus lent que de retourner un curseur ref.
Je peux utiliser un curseur de référence en combinaison avec C #, pourquoi ne pouvez-vous pas le faire avec Java? Je suis sûr qu'il y a beaucoup d'exemples.