Unterschied zwischen COMMIT und ROLLBACK in SQL

Autor: Laura McKinney
Erstelldatum: 1 April 2021
Aktualisierungsdatum: 10 Kann 2024
Anonim
SQL. 4. DDL & DML
Video: SQL. 4. DDL & DML

Inhalt


COMMIT und ROLLBACK sind die beiden Transaktionsanweisungen, mit denen die Transaktionen ausgeführt, rückgängig gemacht oder rückgängig gemacht werden. Eine Transaktion kann eine Folge von Abfragen oder die Aktualisierungsanweisungen enthalten, mit denen die Datenbank geändert wird. Der grundlegende Unterschied zwischen COMMIT und ROLLBACK liegt in ihrer Arbeitsweise. Wenn die Transaktion erfolgreich ausgeführt wurde, wird die VERPFLICHTEN Die Anweisung ermöglicht die dauerhafte Änderung der Transaktion in der Datenbank. Wenn andererseits die Transaktion aus irgendeinem Grund erfolgreich ausgeführt wird, wird die ROLLBACK Anweisung macht alle Aktualisierungen ab der ersten Anweisung der aktuellen Transaktion rückgängig.

Erörtern wir den Unterschied zwischen Commit- und ROLLBACK-Anweisungen in SQL mithilfe der unten gezeigten Vergleichstabelle.

  1. Vergleichstabelle
  2. Definition
  3. Hauptunterschiede
  4. Fazit

Vergleichstabelle

Grundlage für den VergleichVERPFLICHTENROLLBACK
BasicCOMMIT validiert die durch die aktuelle Transaktion vorgenommenen Änderungen.ROLLBACK löscht die durch die aktuelle Transaktion vorgenommenen Änderungen.
BewirkenNach der Ausführung der COMMIT-Anweisung kann die Transaktion nicht ROLLBACK sein.Sobald ROLLBACK ausgeführt wird, erreicht die Datenbank ihren vorherigen Zustand, d. H. Vor der Ausführung der ersten Anweisung der Transaktion.
AuftretenCOMMIT tritt auf, wenn die Transaktion erfolgreich ausgeführt wird.ROLLBACK tritt auf, wenn die Transaktion mitten in der Ausführung abgebrochen wird.
SyntaxVERPFLICHTEN;ROLLBACK;

Definition von COMMIT

VERPFLICHTEN ist eine SQL Anweisung, die das signalisiert erfolgreich Abschluss einer Transaktion. Wenn eine Transaktion ihre Ausführung ohne Unterbrechung abschließt, werden die von der Transaktion an der Datenbank vorgenommenen Änderungen dauerhaft. Dies bedeutet, dass die Datenbank ihre vorherigen Zustände nicht wiederherstellen kann, in denen sie vor der Ausführung der ersten Anweisung der Transaktion war.


Die Syntax der COMMIT-Anweisung lautet wie folgt:

VERPFLICHTEN;

Wenn die letzte Anweisung der Transaktion endet, wird die Transaktion teilweise verpflichtet. Als nächstes die Wiederherstellungsprotokolle Stellen Sie sicher, dass selbst bei einem Systemausfall die Datenbank nicht in der Lage ist, die Änderungen dauerhaft zu speichern. Sobald dies überprüft wird, wird die Festschreibungspunkt der Transaktion erreicht hat und schließlich die Transaktion eintritt engagierter Staat. Sobald die Transaktion in einen festgeschriebenen Zustand übergeht, kann kein Rollback mehr durchgeführt werden, und eine neue Transaktion beginnt.

Definition von ROLLBACK

Wie COMMIT, ROLLBACK ist auch eine SQL-Anweisung und signalisiert, dass die Transaktion hat nicht abgeschlossen wurde erfolgreich. Daher ist die Transaktion abgebrochen um die durch die Transaktion vorgenommenen Änderungen rückgängig zu machen. Nach der Ausführung von ROLLBACK bleiben keine durch die aktuelle Transaktion vorgenommenen Änderungen erhalten.


Die Syntax von ROLLBACK lautet wie folgt:

ROLLBACK;

Die Transaktion ROLLBACK wird erforderlich, wenn während der Ausführung einer Transaktion ein Fehler auftritt. Der Fehler kann ein Systemfehler, ein Stromausfall, ein Fehler in den Transaktionsanweisungen oder ein Systemabsturz sein. Im Falle eines Stromausfalls oder eines Systemabsturzes tritt das ROLLBACK auf, wenn das System erneut gestartet wird. ROLLBACK kann nur erfolgen, wenn COMMIT noch nicht ausgeführt wurde.

  1. Der Hauptunterschied zwischen den Anweisungen COMMIT und ROLLBACK von SQL besteht darin, dass durch die Ausführung der Anweisung COMMIT alle von der aktuellen Transaktion vorgenommenen Änderungen dauerhaft werden. Andererseits löscht die Ausführung von ROLLBACK alle durch die aktuelle Transaktion vorgenommenen Änderungen.
  2. Sobald die COMMIT-Anweisung ausgeführt wurde, kann die von der Transaktion vorgenommene Änderung nicht ROLLBACK sein. Sobald jedoch die ROLLBACK-Anweisung ausgeführt wird, erreicht die Datenbank ihren vorherigen Status.
  3. COMMIT wird bei erfolgreicher Ausführung der Transaktionsanweisungen ausgeführt. Der ROLLBACK wird jedoch ausgeführt, wenn die Transaktion nicht erfolgreich ausgeführt wird.

Fazit:

Um sicherzustellen, dass die von der Transaktion vorgenommenen Änderungen dauerhaft in der Datenbank gespeichert werden, verwenden Sie COMMIT, nachdem die Transaktion erfolgreich abgeschlossen wurde. Falls bei der Ausführung der Transaktion ein Fehler auftritt, wird ROLLBACK verwendet, um die durch die Transaktion vorgenommenen Änderungen rückgängig zu machen.