Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Atomicité | Acid
Techniques Avancées en SQL
course content

Contenu du cours

Techniques Avancées en SQL

Techniques Avancées en SQL

1. Acid
2. Optimisation des Requêtes.Indexes
3. Quelques Sujets Supplémentaires

book
Atomicité

Atomicité en SQL fait référence à l'une des propriétés ACID, qui garantit que nous utilisons des transactions lors de l'interrogation des données à l'aide de SQL.
Dans le contexte des bases de données SQL, l'atomicité garantit que toutes les opérations au sein d'une unité logique particulière sont complétées, ou aucune d'entre elles ne l'est.

Traitement des transactions en SQL

Caractéristiques clés

  • Rollback : Si une partie échoue (par exemple, en raison d'une erreur ou d'une violation de contrainte), la transaction entière est annulée, rétablissant les modifications ;

  • Commit : Si toutes les opérations réussissent, la transaction est validée, rendant les modifications permanentes.

Création de transactions en SQL

En SQL, chaque instruction individuelle est considérée comme une transaction.
Cependant, nous pouvons créer manuellement des transactions qui contiennent plus d'une instruction.

Imaginons un scénario où nous avons deux tables :

  • la table BankAccounts, qui comprend les colonnes suivantes : account_number (clé primaire), account_holder et balance ;

  • la table UserLogs avec les colonnes : account_number, action, timestamp, etc. La combinaison de account_number et timestamp est une clé primaire composite de cette relation.

Maintenant, considérons un scénario où nous avons l'intention de créer un nouveau compte bancaire et de générer simultanément une entrée de journal pour signifier l'ajout du nouveau compte.
Il est impératif que ces deux actions, l'ajout du compte et l'enregistrement de l'événement, soient traitées comme une seule unité logique et doivent être enveloppées dans une seule transaction. Voici un exemple très basique de la façon dont nous pourrions faire cela avec une transaction :

Dans la requête ci-dessus, nous utilisons le bloc BEGIN pour signifier que toutes les instructions suivantes doivent être considérées comme une seule unité - si l'une d'elles n'est pas exécutée, aucune des instructions ne doit être exécutée.
Le mot-clé COMMIT signifie la fin du bloc de transaction.

Que garantit le concept d'atomicité dans le contexte des transactions de base de données ?

Que garantit le concept d'atomicité dans le contexte des transactions de base de données ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 3
We're sorry to hear that something went wrong. What happened?
some-alt