Exécution de transactions dans ADOMD.NET
Dans ADOMD.NET, l'objet AdomdTransaction permet de gérer le contexte de transaction pour un objet AdomdConnection donné. Ces fonctionnalités vous permettent d'exécuter plusieurs commandes dans le même contexte. Chaque commande lit les mêmes données sans que les données lues ne soient modifiées entre chaque exécution de commande.
[!REMARQUE]
La classe AdomdTransaction est l'implémentation de l'interface System.Data.IDbTransaction, qui fait partie intégrante de la bibliothèque de classes Microsoft .NET Framework et qui est implémentée par tous les fournisseurs de données .NET Framework qui prennent en charge les transactions.
L'objet AdomdTransaction ne prend en charge que les transactions validées en lecture, dans lesquelles les verrous partagés sont maintenus pendant la lecture des données afin d'éviter des lectures erronées.
L'objet AdomdConnection est utilisée pour démarrer la transaction. Pour utiliser la transaction, des commandes sont ensuite exécutées sur la connexion qui a démarré la transaction. Une fois que vous avez terminé la transaction, vous pouvez soit l'annuler, soit la valider.
Démarrage d'une transaction
Vous pouvez créer une instance d'un objet AdomdTransaction en appelant la méthode BeginTransaction de l'objet AdomdConnection. L'exemple suivant montre comment créer une instance de l'objet AdomdTransaction :
Dim objTransaction As AdomdTransaction = objConnection.BeginTransaction()
AdomdTransaction objTransaction = objConnection.BeginTransaction();
Annulation d'une transaction
Pour annuler une transaction incomplète existante, vous devez appeler la méthode Rollback de l'objet AdomdTransaction. Si vous appelez cette méthode pour une transaction complète existante, une exception est levée.
Validation d'une transaction
Après avoir appelé la méthode BeginTransaction pour démarrer une transaction, vous pouvez terminer la transaction en appelant la méthode Commit de l'objet AdomdTransaction. Si cette méthode est appelée pour une transaction complète existante, une exception est levée.