Im Beispiel in der praktischen Einführung in Dirty Reads wurde der erste Typ von Inkonsistenz vorgeführt, nämlich der Dirty Read. In diesem Beispiel führte ein "Accountant" eine Berechnung aus, während der "Sales Manager" dabei war, einen Preis heraufzusetzen. Die Berechnung des "Accountants" beruhte auf fehlerhaften Daten, die der "Sales Manager" eingegeben hatte und gerade korrigieren wollte.
Das folgende Beispiel zeigt eine andere Art von Inkonsistenz: Nicht-wiederholbare Lesevorgänge. In diesem Beispiel spielen Sie die Rolle derselben zwei Mitarbeiter, die die SQL Anywhere-Beispieldatenbank gleichzeitig benutzen. Der "Sales Manager" möchte für Plastik-Schirmmützen einen neuen Preis anbieten. Der "Accountant" will die Preise für einige Waren auf einer kürzlich getätigten Bestellung überprüfen.
Dieses Beispiel beginnt mit beiden Verbindungen auf Isolationsstufe 1 und nicht auf Isolationsstufe 0, was die Standardisolation für die Beispieldatenbank wäre, die mit SQL Anywhere bereitgestellt wird. Indem die Isolationsstufe auf 1 gesetzt wird, vermeiden Sie die Art von Inkonsistenz, die in der vorherigen praktischen Einführung aufgezeigt wurde, nämlich Dirty Reads.
Damit diese praktische Einführung funktioniert, darf die Option Datenbanksperren automatisch freigeben in Interactive SQL (Extras » Optionen » SQL Anywhere) nicht aktiviert sein.
Lektion 1: Erstellen von nicht wiederholbaren Lesevorgängen
Lektion 2: Vermeiden von nicht wiederholbaren Lesevorgänge
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |