Skillnaden mellan COMMIT och ROLLBACK i SQL

Författare: Laura McKinney
Skapelsedatum: 1 April 2021
Uppdatera Datum: 12 Maj 2024
Anonim
Git vs Github vs GitLab — Key Differences and How to Get Started with Version Control
Video: Git vs Github vs GitLab — Key Differences and How to Get Started with Version Control

Innehåll


ÅTAGANDE och ROLLBACK är de två transaktionella uttalandena som används för att göra eller ångra transaktionerna. En transaktion kan ha en sekvens av frågor, eller den kan ha uppdateringssatserna som modifierar databasen. Den grundläggande skillnaden mellan COMMIT och ROLLBACK ligger i deras arbete. Om transaktionen genomförs framgångsrikt, då BEGÅ uttalande tillåter att ändringen av transaktionen i databasen blir permanent. Å andra sidan, om transaktionen på grund av någon anledning utförs framgångsrikt, då RULLA TILLBAKA uttalande ångrar alla uppdateringar, direkt från det första uttalandet om den aktuella transaktionen.

Låt oss diskutera skillnaden mellan Commit och ROLLBACK uttalanden i SQL med hjälp av jämförelsediagram som visas nedan.

  1. Jämförelsediagram
  2. Definition
  3. Viktiga skillnader
  4. Slutsats

Jämförelsediagram

Grund för jämförelseBEGÅRULLA TILLBAKA
GrundläggandeCOMMIT validerar de ändringar som gjorts av den aktuella transaktionen.ROLLBACK raderar ändringarna som gjorts av den aktuella transaktionen.
EffektEfter genomförandet av COMMIT-uttalandet kan transaktionen inte vara ROLLBACK.När ROLLBACK har utförts når databasen sitt tidigare tillstånd, dvs innan genomförandet av transaktionens första uttalande.
FörekomstCOMMIT uppstår när transaktionen genomförs framgångsrikt.ROLLBACK inträffar när transaktionen avbryts i mitten av utförandet.
SyntaxBEGÅ;RULLA TILLBAKA;

Definition av COMMIT

BEGÅ är ett SQL-uttalande, som signalerar framgångsrik genomförande av en transaktion. Närhelst en transaktion slutför sitt utförande utan avbrott blir ändringarna som görs i databasen av transaktionen permanenta. Vilket innebär att databasen inte kan återfå sina tidigare tillstånd där den var innan transaktionen genomfördes för det första uttalandet.


Syntaxen för COMMIT-uttalandet är som följer:

BEGÅ;

När transaktionens sista uttalande slutar blir transaktionen delvis engagerad. Nästa, återhämtningsprotokoll säkerställa att även ett systemfel, inte kan databasen, inte göra ändringarna permanenta. Så snart detta har kontrollerats, begå punkt av transaktionen har nått och slutligen ingår transaktionen en engagerat tillstånd. När transaktionen har ingått ett åtagit tillstånd kan den inte återuppspelas och en ny transaktion börjar.

Definition av ROLLBACK

Som COMMIT, RULLA TILLBAKA är också ett SQL-uttalande, och det signalerar att transaktionen har inte har avslutats framgångsrikt. Därför är transaktionen avbruten för att ångra ändringarna som gjorts av transaktionen. Efter genomförandet av ROLLBACK behålls inga ändringar som gjorts av den aktuella transaktionen.


Syntaxen för ROLLBACK är som följer:

RULLA TILLBAKA ;

Transaktion ROLLBACK blir nödvändig om ett fel uppstår under genomförandet av en transaktion. Felet kan vara systemfel, strömavbrott, fel i transaktionsuttalanden, systemkrasch. Vid strömavbrott eller systemkrasch uppstår ROLLBACK när systemet startas om igen. ROLLBACK kan endast ske om COMMIT ännu inte har körts.

  1. Den viktigaste skillnaden mellan COMMIT- och ROLLBACK-uttalanden i SQL är att exekveringen av COMMIT-uttalandet gör att alla ändringar som gjorts av den aktuella transaktionen blir permanent. Å andra sidan raderar utförandet av ROLLBACK all ändring som gjorts av den aktuella transaktionen.
  2. När COMMIT-uttalandet har genomfört kan ändringen som gjorts av transaktionen inte vara ROLLBACK. När ROLLBACK-uttalandet har utförts når databasen dock sitt tidigare tillstånd.
  3. COMMIT verkställs vid framgångsrikt genomförande av transaktionsrapporter. ROLLBACK utförs emellertid när transaktionen inte genomförs framgångsrikt.

Slutsats:

För att säkerställa att ändringarna som gjorts av transaktionen sparas permanent i databasen, använd COMMIT efter att transaktionen har slutförts. Om transaktionen står inför något fel under genomförandet för att ångra ändringarna som gjorts av transaktionen används ROLLBACK.