Savepoint'leri kullanma
Çalışma arkadaşın Anita'nın yardıma ihtiyacı var. Savepoint kullanan bir betik hazırladı ama çalışmıyor. Betik ilk savepoint olan savepoint1'i işaretliyor ve ardından bir müşterinin verilerini ekliyor. Sonra betik başka bir savepoint, savepoint2'yi işaretliyor ve yine başka bir müşterinin verilerini ekliyor. Bundan sonra her iki savepoint de geri alınıyor (rollback). Son olarak, betik başka bir savepoint, savepoint3'ü işaretliyor ve başka bir müşterinin verilerini ekliyor.
Anita, betiğinde bazı hatalar olduğu için çalışmadığını söylüyor ama nasıl düzelteceğini bilmiyor. Ona yardım edebilir misin?
Bu egzersiz, kursun bir parçasıdır
SQL Server'da İşlemler ve Hata Yönetimi
Egzersiz talimatları
- Hatalar olduğunu görmek için kodu çalıştır.
- Tüm hataları düzelt.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
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;