Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Fred BROUARD - SQLpro
John S. a écrit:
Bonjour,
J'ai lu ton article avec un très grand intérêt, au point de l'avoir gardé sous la main pour y revenir de temps en temps. Vraiment très intéressant, et très bien expliqué.
Toutefois, je n'y ai pas trouvé de réponse traitant du problème précis que j'évoque. Je crois comprendre dans ta réponse qu'il n'y a pas de solution, et que tout ordre passé au serveur est séquentialisé, sans préocupation du fait que l'ordre provienne de la transaction 1 ou de la transaction 2.
En gros, si j'ai bien compris, un ROLLBACK émis par la transaction 2 annulera toutes les modifications effectuées par la transaction 1 (qui n'a pas encore fait son commit).
non...
Un rollback de T1 annule T1, pas T2
T1 ne voit pas T2, c'est cela l'isolation
A +
Est-ce bien cela ? Si oui, je m'en étonne, le cas que je cite n'étant pas un cas d'espèce...
Cordialement.
"Fred BROUARD - SQLpro" a écrit dans le message de news: 3f601a13$0$20951$
A partir du moment ou il y a transaction, c'est à dire : debut de la transaction puis soit COMMIT soit ROLLBACK tu peut considérer que chaque transaction sera jouée comme si le processeur était devenu mono tache et la transaction atomique.
Cependant, il convient de considérer aussi le niveau d'isolation des transactions.
A lire : http://sqlpro.developpez.com/TECH/SQL_TEHC.html#TECH01
-- Frédéric BROUARD - expert SQL, spécialiste : SQL Server / Delphi / web Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com ****************** mailto: ******************
John S. a écrit:
Bonjour,
J'ai lu ton article avec un très grand intérêt, au point de l'avoir gardé
sous la main pour y revenir de temps en temps. Vraiment très intéressant, et
très bien expliqué.
Toutefois, je n'y ai pas trouvé de réponse traitant du problème précis que
j'évoque. Je crois comprendre dans ta réponse qu'il n'y a pas de solution,
et que tout ordre passé au serveur est séquentialisé, sans préocupation du
fait que l'ordre provienne de la transaction 1 ou de la transaction 2.
En gros, si j'ai bien compris, un ROLLBACK émis par la transaction 2
annulera toutes les modifications effectuées par la transaction 1 (qui n'a
pas encore fait son commit).
non...
Un rollback de T1 annule T1, pas T2
T1 ne voit pas T2, c'est cela l'isolation
A +
Est-ce bien cela ? Si oui, je m'en étonne, le cas que je cite n'étant pas un
cas d'espèce...
Cordialement.
"Fred BROUARD - SQLpro" <brouardf@club-internet.fr> a écrit dans le message
de news: 3f601a13$0$20951$7a628cd7@news.club-internet.fr...
A partir du moment ou il y a transaction, c'est à dire :
debut de la transaction
puis soit COMMIT soit ROLLBACK
tu peut considérer que chaque transaction sera jouée comme si le
processeur était devenu mono tache et la transaction atomique.
Cependant, il convient de considérer aussi le niveau d'isolation des
transactions.
A lire :
http://sqlpro.developpez.com/TECH/SQL_TEHC.html#TECH01
--
Frédéric BROUARD - expert SQL, spécialiste : SQL Server / Delphi / web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
****************** mailto:brouardf@club-internet.fr ******************
J'ai lu ton article avec un très grand intérêt, au point de l'avoir gardé sous la main pour y revenir de temps en temps. Vraiment très intéressant, et très bien expliqué.
Toutefois, je n'y ai pas trouvé de réponse traitant du problème précis que j'évoque. Je crois comprendre dans ta réponse qu'il n'y a pas de solution, et que tout ordre passé au serveur est séquentialisé, sans préocupation du fait que l'ordre provienne de la transaction 1 ou de la transaction 2.
En gros, si j'ai bien compris, un ROLLBACK émis par la transaction 2 annulera toutes les modifications effectuées par la transaction 1 (qui n'a pas encore fait son commit).
non...
Un rollback de T1 annule T1, pas T2
T1 ne voit pas T2, c'est cela l'isolation
A +
Est-ce bien cela ? Si oui, je m'en étonne, le cas que je cite n'étant pas un cas d'espèce...
Cordialement.
"Fred BROUARD - SQLpro" a écrit dans le message de news: 3f601a13$0$20951$
A partir du moment ou il y a transaction, c'est à dire : debut de la transaction puis soit COMMIT soit ROLLBACK tu peut considérer que chaque transaction sera jouée comme si le processeur était devenu mono tache et la transaction atomique.
Cependant, il convient de considérer aussi le niveau d'isolation des transactions.
A lire : http://sqlpro.developpez.com/TECH/SQL_TEHC.html#TECH01
-- Frédéric BROUARD - expert SQL, spécialiste : SQL Server / Delphi / web Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com ****************** mailto: ******************