Savepoints verwenden
Deine Kollegin Anita braucht Hilfe. Sie hat ein Skript vorbereitet, das Savepoints verwendet, aber es funktioniert nicht. Das Skript markiert den ersten Savepoint, savepoint1, und fügt dann die Daten eines Kunden ein. Danach markiert das Skript einen weiteren Savepoint, savepoint2, und fügt erneut die Daten eines anderen Kunden ein. Anschließend werden beide Savepoints zurückgerollt. Zum Schluss markiert das Skript einen weiteren Savepoint, savepoint3, und fügt die Daten eines weiteren Kunden ein.
Anita sagt dir, dass ihr Skript nicht funktioniert, weil es einige Fehler hat, aber sie weiß nicht, wie sie sie beheben kann. Kannst du ihr helfen?
Diese Übung ist Teil des Kurses
Transaktionen und Fehlerbehandlung in SQL Server
Anleitung zur Übung
- Führe den Code aus, um zu prüfen, dass es Fehler gibt.
- Korrigiere jeden Fehler.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
BEGIN TRAN;
-- Mark savepoint1
savepoint1 SAVE TRAN;
INSERT INTO customers VALUES ('Mark', 'Davis', '[email protected]', '555909090');
-- Mark savepoint2
savepoint2 SAVE TRAN;
INSERT INTO customers VALUES ('Zack', 'Roberts', '[email protected]', '555919191');
-- Rollback savepoint2
savepoint2 ROLLBACK TRAN;
-- Rollback savepoint1
savepoint1 ROLLBACK TRAN;
-- Mark savepoint3
savepoint3 SAVE TRAN;
INSERT INTO customers VALUES ('Jeremy', 'Johnsson', '[email protected]', '555929292');
-- Commit the transaction
COMMIT TRAN;