Aller au contenu

Transaction de base de données

Une transaction de base de données regroupe des modifications pour les valider ensemble ou les annuler ensemble.

Interfaces & intégration

Une transaction de base de données réunit plusieurs étapes en une seule unité. Si les modifications sont validées, la base les applique ensemble ; si la transaction est abandonnée, elles sont annulées ensemble. Une erreur ne laisse donc pas subsister une partie seulement de la modification prévue.

Modifier ensemble l’affectation et son historique

Dans une application fictive de gestion des équipements, device-4 passe du projet P-1 au projet P-2. La nouvelle affectation et une entrée dans l’historique se trouvent dans la même base et doivent être enregistrées ensemble. L’application ouvre une transaction avec BEGIN. Si les deux étapes réussissent, elle les valide avec COMMIT ; si une étape échoue, elle annule les modifications de cette transaction avec ROLLBACK.

Les données visibles par les transactions concurrentes et les conflits possibles dépendent aussi de l’isolation et des accès effectués. Les règles métier restent à appliquer : la limite de transaction ne prévient pas à elle seule toute affectation incorrecte.

Cette annulation locale ne rappelle pas un e-mail déjà envoyé. La coordination avec d’autres systèmes exige une solution distincte. Le modèle Transactional Inbox utilise précisément une même transaction pour associer le traitement du message à l’enregistrement de son identifiant de déduplication.

Sources

Articles sur le sujet

Interfaces & intégration avec ASES

ERP, CRM et boutique bien connectés