Was ist Transaktion?
Folge von Operationen auf einer Datenbank, die als eine Einheit behandelt wird. COMMIT macht die Ergebnisse dauerhaft, ROLLBACK stellt den Zustand vor Beginn wieder her. Das DBMS verwaltet Transaktionen mit Sperren und Protokollen so, dass sie Atomarität, Konsistenz, Isolation und Dauerhaftigkeit (die ACID-Eigenschaften) erfüllen.
Japanische Bezeichnung: トランザクション
„Transaktion“ kommt in 12 Übungsfragen aus 1 Themen vor, z. B. Grundlagen der Datenbanken.
Fachgebiet: Grundlagen der Datenbanken
COMMIT und ROLLBACK
Bei einer Überweisung zwischen Konten ist das Ergebnis erst korrekt, wenn sowohl die Belastung von Konto A als auch die Gutschrift auf Konto B erfolgt sind. Eine Transaktion fasst eine solche Folge von Operationen zu einer Einheit zusammen: Ein COMMIT am Ende macht die Ergebnisse dauerhaft, und ein ROLLBACK, etwa wenn zwischendurch ein Fehler auftritt, verwirft jede Änderung in der Transaktion. Nicht festgeschriebene Änderungen werden auch bei einem Ausfall verworfen, sodass kein halbfertiger Zustand mit nur einem Teil der Änderungen zurückbleibt.
Häufige Fragen
Was geschieht, wenn mitten in einer Transaktion ein Fehler auftritt?
Entweder führt die Anwendung ein ROLLBACK aus, oder das DBMS führt die Wiederherstellung nach dem Ausfall durch; in beiden Fällen wird jede Änderung in dieser Transaktion verworfen. Es bleiben nie nur einige der Änderungen zurück.
Welche Probleme entstehen, wenn eine Transaktion lange dauert?
Sie hält Sperren lange fest, sodass andere Transaktionen warten, weniger gleichzeitig verarbeitet werden kann und Deadlocks wahrscheinlicher werden. Grundsätzlich sollte eine Transaktion so kurz sein, wie es zur Wahrung der Konsistenz nötig ist.