|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Inscription : octobre 2008 Messages : 53 ![]() |
Bonjour a tous,
revoilà avec une autre question d'après ce que j'ai compris sur les transactions , ces derniers ne sont validé ou annulé qu'âpres un commit ou rollback mais dans l'exemple ci-dessous ( traite le probleme de gestion de concurrence) on voit que la modification dans operation1 prend lieu même si on pas encore fait de commit ( ou c'est moi qui a mal compris et on peu faire un commit puis un rollback ![]() ![]() ![]() pourriez vous m'éclaircir ce qui se passe vraiment? merci |
|
|
00
|
|
|
#2 | ||||||||||||
|
Membre expérimenté
![]() François Inscription : février 2010 Messages : 305 ![]() |
Bonjour,
Tout depend du niveau d'isolation choisie. http://download.oracle.com/docs/cd/B...c.htm#g1026777 Dans votre exemple, on ne fonctionne pas en read commited car la transaction numero 2 lit les valeurs de la 1 qui ne sont pas validees (ou annulees) Mais ce probleme vient du schema en lui meme. De base (avec le mode de transaction classique) ca ne fonctionne pas comme ca. Code :
Code :
Code :
Code :
Code :
Code :
![]() Je me disais aussi... |
||||||||||||
|
|
00
|
|
|
#3 |
|
Expert Confirmé Sénior
![]() Inscription : juillet 2003 Messages : 3 437 ![]() |
Code :
UPDATE tmp SET n=(SELECT n FROM tmp) +500; =>
__________________
More Code : More Bugs. Less Code : Less Bugs |
|
|
10
|
|
|
#4 |
|
Candidat au titre de Membre du Club
![]() Inscription : octobre 2008 Messages : 53 ![]() |
Merci bien je comprends mieux maintenant
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com