La transaction ne s'effectue qu'à demi

Signaler
Messages postés
410
Date d'inscription
dimanche 1 février 2004
Statut
Membre
Dernière intervention
8 mai 2010
-
Messages postés
410
Date d'inscription
dimanche 1 février 2004
Statut
Membre
Dernière intervention
8 mai 2010
-
bonsoir,
Difficile de tout expliquer en peu de mots, mais en gros :
J'effectue une transaction qui contient des opérations diverses. Dans certains cas, 2 de ces opérations (non contigües) s'effectuent sur le même enregistrement d'une table. Par exemple une soustraction sur une colonne, puis + tard une addition sur cette même colonne.
Une fois la transaction terminée, seule la dernière opération (l'addition)est effectuée. La première est "oubliée".
Si ces 2 opérations portent sur des enregistrements différents, pas de problème, les 2 sont effectuées.
Si je clos la transaction entre ces 2 opérations, tout se passe normalement, elles sont effectuées aussi toutes les 2.
Est-ce normal, y a-t-il un moyen de contourner cet obstacle, une ligne à écrire, un petit secret ?

merci de vos lumières
Gilles

2 réponses

Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
29
Bonsoir,

Commet effectue la transaction ? en .net ? ou en pure T-SQL ?

je pense que t'auras plus de chance de réponses sur www.sqlfr.com qu'ici.

<hr />Cyril - MSP - MCTS ASP.net & SQL
Messages postés
410
Date d'inscription
dimanche 1 février 2004
Statut
Membre
Dernière intervention
8 mai 2010

bonjour,
En .Net : je n'ai pas l'impressioin que ce soit un Pb Sql .
Au début de mes opérations j'ai ma connexion "Cnn" et une transaction "Tr"  et l'instruction
Tr=Cnn.BeginTransaction
Je fais toutes mes opérations , qui sont tres banales : il s'agit d'une modification de location de matériel (je resume)
1.j'annule l"ancien matériel loué (je recrédite le stock)
2.je modifie éventuellement les coordonnées du client dans une table
3 je modifie la fiche location
4 je déduit le stock
puis
Tr.commit
 Cnn.close
Comme je résume, ca parait idiot de mettre le stock à jour en 2 fois, mais c'est plus facile ainsi.

Si je ne modifie que la quantité du meme produit, il ne sa passe que la dernière opération
si je change de produit, tout va bien.
Le pire, c'est que j'ai l'impression que c'est normal, et qu'il y a qqch qui m'échappe dans le mécanisme.
Qu'en penses-tu?
Gilles