J'essaye d'écrire un client qui exécute une série de procédures DB2 iSeries Stored dans DB2. J'utilise le fournisseur IBM.Data.DB2.iSeries et j'ai besoin que tous mes appels soient dans une transaction .NET. On dirait que tout est ignoré et que les données sont validées.Tous les pointeurs ...Comment pouvez-vous activer les transactions avec IBM.Data.DB2.iSeries pour les procédures stockées?
Q
Comment pouvez-vous activer les transactions avec IBM.Data.DB2.iSeries pour les procédures stockées?
1
A
Répondre
3
La base de données de l'iSeries est-elle journalisée? C'est nécessaire pour le contrôle des engagements.
0
Êtes-vous en utilisant le DB2Connection.BeginTransaction Method?
1
Je viens d'avoir le même problème, et compris que le problème est pas dans le code .Net, mais dans la procédure stockée. Vérifiez votre définition de proc stockée pour une option COMMIT. Si elle est définie sur "* NONE", elle sera automatiquement validée, indépendamment des transactions dans votre code .Net. Changez-le en * RR (lecture répétable), et vos transactions devraient fonctionner correctement.
Plus d'informations here.
oui les fichiers requis en question sont journalisés – chugh97
Votre serveur iSeries est-il sous maintenance logicielle? Si oui, vous pouvez probablement appeler IBM et leur demander directement. –
Il peut également être utile de savoir comment ces procédures stockées sont définies ou utilisées. Utilisez-vous l'instruction SQL CALL, sont-ils des programmes RPG, etc. –