Qu'est-ce que la transaction et le type de transaction en SQL ?

5 Réponses


  • Une transaction en SQL (langage de requête structuré) est une unité plus grande de traitement de base de données qui contient une ou plusieurs opérations d'accès à la base de données telles que des opérations d'insertion, de suppression, de récupération et de modification.

    Ces transactions doivent remplir certaines caractéristiques et elles sont :

    Atomicité : La transaction est soit effectuée entièrement, soit pas effectuée du tout.
    Isolement : la transaction ne doit pas être gênée par une autre transaction s'exécutant simultanément.
    Durabilité : Les modifications apportées par la transaction doivent être définitivement validées dans la base de données.
    Préservation de la cohérence : si la base de données était cohérente avant l'exécution de la transaction. Elle doit rester cohérente après l'exécution complète de cette transaction.

    Il existe deux types de transactions : explicites et implicites Les

    explicites sont celles qui doivent être spécifiées comme : commit et roll-back La

    transaction de validation signale que la transaction a été exécutée avec succès et que les modifications/mises à jour (le cas échéant) apportées par la transaction ont été validées à la base de données et ces modifications ne peuvent pas être annulées.

    L'annulation signale que la transaction n'a pas été exécutée avec succès et que les modifications/mises à jour apportées par la transaction doivent être annulées.

    Les transactions implicites sont celles qui marquent le début et la fin de la transaction, chaque instruction comme update, delete, insert s'exécute dans ces transactions implicites.,Cependant, vous pouvez spécifier explicitement le début et la fin de la transaction par "begin transaction" et "end transaction " déclarations respectivement. Tous les relevés à l'intérieur de ces deux limites seront marqués comme une seule transaction.
  • Transaction signifie être capable d'exécuter plusieurs instructions en une seule unité, de sorte que toutes les instructions soient exécutées ou qu'aucune ne soit exécutée.

    Des transactions sont requises dans les applications qui collectent ou manipulent des données afin de garantir l'intégrité des données. L'intégrité des données est assurée lorsque deux personnes ne sont pas en mesure de mettre à jour/modifier un enregistrement en même temps. De plus, les données modifiées ne peuvent être modifiées par personne jusqu'à ce qu'elles soient enregistrées (validées) dans la base de données.

    SQL Server écrit d'abord les modifications d'une transaction dans un fichier journal. Si la transaction réussit, les modifications sont COMMITTED et les tables sont mises à jour. Si, pour une raison quelconque, la transaction échoue, la transaction subit un ROLLBACK et les données précédentes sont restaurées (avant que les modifications n'aient eu lieu).

    Il existe deux types de transactions dans SQL Server :

    1) Transactions implicites
    2) Transactions explicites.

    TRANSACTIONS IMPLICITES - par défaut, toutes les instructions INSERT, DELETE, UPDATE s'exécutent comme des transactions implicites. Par exemple, si une requête de mise à jour est exécutée et qu'une contrainte de clé primaire est violée, une annulation se produira et les modifications ne se produiront pas.

    TRANSACTIONS EXPLICITES - Celles-ci sont écrites par le programmeur. Afin d'exécuter un groupe d'instructions en tant que transaction, nous écrivons les instructions dans un bloc BEGIN TRANSACTION et COMMIT TRANSACTION. Si une erreur se produit, nous pouvons utiliser ROLLBACK, afin que l'état précédent des données soit restauré.
  • La transaction est une unité de l'instruction SQL. Il existe deux types de transaction dans SQL
    1.explicity
    2.implicity
  • SQL transfère les transactions comme distinctes de la coutume SQL. Une transaction est une série d'instructions SQL qu'Oracle considère comme un élément d'effort solitaire. Dès que vous vous connectez à la base de données avec SQL plus, une transaction commence. Au début de la transaction, chaque déclaration SQL DML (Data Manipulation Language) que vous soumettez devient par conséquent une fraction de cette transaction. Une transaction se termine lorsque vous vous détachez de la base de données ou lorsque vous utilisez une commande COMMIT ou ROLLBACK.

    COMMIT rend permanentes toutes les modifications apportées à la base de données tout au long de la présente transaction. En attendant que vous confiiez vos modifications, les autres utilisateurs ne pourront pas les visualiser. La commande ROLLBACK met fin à la transaction existante et annule toutes les modifications préparées depuis le début de la transaction.

    Après la rupture de la transaction actuelle avec un COMMIT ou un ROLLBACK, la première instruction SQL exécutable que vous soumettez par conséquent commencera robotiquement une autre transaction. Le même système permet de désigner la fin d'une transaction (SAVEPOINT/COMMIT/ROLLBACK) et le début de celle-ci.

    Ce point de sauvegarde peut être de seconde main en combinaison avec la règle ROLLBACK TO annuler des parties d'une transaction.
  • Nous savons que les fichiers journaux contiennent toutes les activités de définition et de manipulation des données, qui construiront la base de données en cas de défaillance. Ainsi, dans de nombreux cas, vous devez utiliser un outil de journal des transactions SQL pour cela. Je veux vous suggérer un outil de journal des transactions SQL dbForge .

Ecrivez votre réponse

Votre réponse apparaîtra après modération