Les transactions imbriquées - scénario de Restauration

A(){
    con.begin;
    .........
    .........
    B();
    ........
    ........(con.rollback;)
    con.commit;
    }

    B{
    con.begin;
    .......
    .......
    con.commit;
    }

Dans le code ci-dessus, je commence une nouvelle DB transaction à Un(). Il exécute certains transaction avec succès. Après que B() commence l'exécution et il est également responsable de certaines transactions avec succès et maintenant, le contrôle revient à l'(). À ce stade, certains exception se produit et je fais un retour en arrière. Je voudrais savoir si la transaction qui a réussi à B() restaure ou pas.

OriginalL'auteur Selva | 2010-09-24