Ma procédure stockée SQL contient deux requêtes et je souhaite appeler la procédure stockée à partir de mon code Java. J'ai essayé le code ci-dessous mais il renvoie uniquement la liste des résultats de la première requête de la procédure stockée.
Query query = em.createNativeQuery("{call voucherRedemption(?,?,?)}"); query.setParameter(1, connectéWorkSpaceId); query.setParameter(2, startDate); query.setParameter(3, endDate); Liste
La procédure stockée est la suivante :
CRÉER UNE PROCÉDURE `cer`.`voucherRedemption`(IN workspaceId int(10), IN startDate VARCHAR(30), DANS date de fin VARCHAR(30)) COMMENCER sélectionnez w.ws_name comme wsName, str_to_date(startDate, '%Y-%m-%d') comme startDate, str_to_date(endDate, '%Y-%m-%d') comme endDate depuis l'espace de travail w où w.ws_id = workspaceId ; sélectionnez money.*,money.paidAmount + money.prepaidAmount - money.clientCost,programs.programs du programme ; FIN
Je recommande de l'utiliser comme ceci
EntityManager#createStoredProcedureQuery
:Je ne l'ai pas utilisé pour obtenir des résultats réels, j'ai juste effectué un processus. Si cela fonctionne, faites-le-moi savoir.