Databases Reference
In-Depth Information
10 Transaktionen
Datenbanken werden meist von vielen Nutzern fast gleichzeitig
genutzt. Dieses Kapitel zeigt Ihnen die möglichen Gefahren
und Lösungsansätze.
In den bisherigen Kapiteln wurde implizit angenommen, dass
man alleine am System arbeitet. Dies ist bei großen Datenban-
ken typischerweise nicht der Fall. Um die Arbeit nicht unnötig
zu verkomplizieren, sollte das Datenbank-Managementsystem
dafür sorgen, dass der Nutzer auf andere Nutzer keine Rück-
sicht nehmen muss. In diesem Kapitel wird gezeigt, dass diese
Aufgabe zwar grundsätzlich vom Datenbank-Management-
system übernommen wird, es aber sinnvoll ist, sich über kriti-
sche Situationen Gedanken zu machen. Wenn zwei Nutzer die
gleiche Zeile gleichzeitig verändern wollen, ist es nicht möglich,
beiden Nutzern das Gefühl zu geben, alleine an der Datenbank
zu arbeiten.
Im folgenden Unterkapitel wird zunächst die Möglichkeit zur
Transaktionssteuerung für einen einzelnen Nutzer vorgestellt.
Danach werden typische Probleme gezeigt, die bei der gleich-
zeitigen Nutzung der gleichen Tabellen auftreten können und
welche Lösungsmöglichkeiten es für diese Probleme gibt.
Eindruck eines
Einnutzer-
Systems
10.1
Änderungen verwalten
Wurden bisher Änderungen an den Tabellen vorgenommen,
konnte man davon ausgehen, dass diese Änderungen direkt in
der Datenbank durchgeführt wurden. Dieser einfache Ansatz
hat dann Probleme, wenn eine größere Anzahl von Änderun-
gen durchgeführt werden soll, es aber möglich ist, dass man
nach einigen Teilschritten feststellt, dass die Änderungen doch
nicht durchgeführt werden sollen.
Bisher müsste man sich alle Folgen von INSERT -, UPDATE - und
DELETE -Befehlen merken, um dann diese Änderungen mit ei-
ner neuen Folge von SQL-Befehlen wieder rückgängig zu ma-
chen. Dies ist gerade durch die Nutzung komplexer WHERE -
Bedingungen und die verschiedenen Verknüpfungsmöglichkei-
Änderungen
rückgängig ma-
chen
223
Search WWH ::




Custom Search