Transactions

15 min Niveau 9

Une transaction est une unité de travail qui est exécutée dans une base de données. Les transactions sont des unités ou des séquences de travail accomplies dans un ordre logique, que ce soit de manière manuelle par un utilisateur ou automatiquement par un programme de base de données.

Une transaction est la propagation d'une ou plusieurs modifications à la base de données. Par exemple, si vous créez, mettez à jour ou supprimez un enregistrement de la table, vous effectuez une transaction sur la table. Il est important de contrôler les transactions afin de garantir l'intégrité des données et de gérer les erreurs de base de données.

En pratique, vous regroupez plusieurs requêtes SQLite et vous les exécutez toutes ensemble dans le cadre d'une transaction..

Properties of Transactions

Les transactions possèdent les quatre propriétés standard suivantes, généralement désignées par l'acronyme ACID.

  • Atomicity − S'assure que toutes les opérations de l'unité de travail se terminent avec succès ; sinon, la transaction est interrompue au point d'échec et les opérations précédentes sont ramenées à leur état antérieur.
  • Consistency − Assure que la base de données change correctement d'état lors d'une transaction validée avec succès.
  • Isolation − Permet aux transactions de fonctionner indépendamment les unes des autres et de manière transparente.
  • Durability − Garantit que le résultat ou l'effet d'une transaction engagée persiste en cas de défaillance du système.

Transaction Control

Les commandes suivantes sont utilisées pour contrôler les transactions :

  • BEGIN TRANSACTION − Pour commencer une transaction.
  • COMMIT − Pour sauvegarder les changements, vous pouvez également utiliser la commande END TRANSACTION.
  • ROLLBACK − Pour annuler les changements.

Les commandes de contrôle transactionnel sont uniquement utilisées avec les commandes DML INSERT, UPDATE et DELETE. Elles ne peuvent pas être utilisées lors de la création de tables ou de leur suppression car ces opérations sont automatiquement validées dans la base de données.

BEGIN TRANSACTION Command

logo discord

Besoin d'aide ?

Rejoignez notre communauté officielle et ne restez plus seul à bloquer sur un problème !

En savoir plus