Transaktionen

Normalerweise ist der gerade laufende Prozess nicht der einzige, der auf die Datenbank zugreift. Dies gilt gerade für Webseiten, wo nicht bekannt ist, ob ein anderer Besucher gerade aktiv ist. Datenbankmanagementsysteme arbeiten nach dem ACID-Prinzip. ACID steht als Abkürzung für die folgenden Eigenschaften:

  • A: Änderungen sind atomar. Eine Änderung, auch wenn sie über mehrere Tabellen durchgeführt wird, wird entweder ganz oder gar nicht durchgeführt.
  • C: Die Datenbank ist immer konstistent (engl. consistent). Das bedeutet, wenn die Datenbank zuvor konsistent war, wird sie nach der Abarbeitung der Änderungen auch konsistent zurückgelassen.
  • I: Die Datenbank verhält sich so, als ob andere Änderungsanfragen nicht existieren. Jede Anfrage ist isoliert.
  • D: Die Daten sind dauerhaft, d.h. einmal abgespeichert bleiben die Daten in der Datenbank, es sei denn sie werden wieder mit einem Befehl geändert oder gelöscht.

Häufig macht ein Prozess eine oder auch mehrere Anfragen auf der Datenbank und führt dann eine oder mehrere Änderungen durch. Damit das ACID-Prinzip bleibt, die Daten also beispielsweise nicht zwischen Abfrage und Schreiben geändert werden, was fatal wäre, wird um die gesamte Datenbankinteraktion eine Transaktionsklammer gelegt. Die Transaktionsklammer versucht gemäß obigen Prinzip alles in ihr enthaltene abzuarbeiten. Gelingt dies aus irgendeinem Grunde nicht, macht sie automatisch einen Rollback und wirft einen Fehler, so das die Datenbank wieder im Originalzustand vorliegt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert