Databases Reference
In-Depth Information
ser Versuch kann scheitern, wenn ein zweiter Nutzer Änderun-
gen an den gleichen Tabellen vornehmen möchte. In diesem
Fall führt das Datenbank-Managementsystem automatisch ein
ROLLBACK durch und verwirft die gesamte Transaktion.
Werden neue Tabellen angelegt, Tabellen gelöscht oder bricht
ein Nutzer die Datenbank-Verbindung ab, wird typischerweise
automatisch ein COMMIT durchgeführt. Dies kann aber in der
Konfiguration von Datenbank-Managementsystemen einge-
stellt werden.
Der beispielhafte Ablauf von Tabellenänderungen mit Transak-
tionssteuerung wird mit dem folgenden SQL-Skript und der
zugehörigen Ausgabe gezeigt.
CREATE TABLE Mitarbeiter(
MNr INTEGER,
Name VARCHAR(6),
Gehalt INTEGER,
PRIMARY KEY(MNr)
);
INSERT INTO Mitarbeiter VALUES(1,'Egon',70);
INSERT INTO Mitarbeiter VALUES(2,'Uwe',60);
SAVEPOINT;
INSERT INTO Mitarbeiter VALUES(3,'Ute',80);
SELECT * FROM Mitarbeiter;
ROLLBACK;
SELECT * FROM Mitarbeiter;
ROLLBACK;
INSERT INTO Mitarbeiter VALUES(4,'Udo',70);
COMMIT;
SELECT * FROM Mitarbeiter
Die erste Ausgabe liefert:
MNR NAME GEHALT
---------- ------ ----------
1 Egon 70
2 Uwe 60
3 Ute 80
Danach wird zum vorher festgelegten Sicherungspunkt zurück
gesprungen, die Ausgabe liefert:
MNR NAME GEHALT
---------- ------ ----------
1 Egon 70
2 Uwe 60
Dann wird zum Ausgangspunkt der Transaktion zurück ge-
sprungen und danach ein neuer Mitarbeiter namens „Udo“ an-
gelegt. Die Ausgabe liefert:
225
Search WWH ::




Custom Search