Práce se savepointy
Tvoje kolegyně Anita potřebuje pomoct. Připravila skript, který používá savepointy, ale nefunguje správně. Skript označí první savepoint, savepoint1, a pak vloží data zákazníka. Poté označí další savepoint, savepoint2, a vloží data dalšího zákazníka. Následně se provede rollback obou savepointů. Nakonec skript označí savepoint savepoint3 a vloží data ještě jednoho zákazníka.
Anita ti říká, že její skript nefunguje, protože obsahuje chyby, ale neví, jak je opravit. Dokážeš jí pomoct?
Toto cvičení je součástí kurzu
Transakce a zpracování chyb v SQL Serveru
Pokyny k cvičení
- Spusť kód a ověř, že obsahuje chyby.
- Oprav všechny chyby.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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;