Запобігання незакріплюваним (non-repeatable) зчитуванням
Ви відповідаєте за аналіз даних про клієнтів вашого банку.
Ви готуєте скрипт, який спочатку вибирає дані кожного клієнта. Після цього ваш скрипт має виконати деякі математичні обчислення на основі отриманого результату. (У цій вправі ми на цих операціях не зосереджуємося.) Далі ви хочете знову вибрати ті самі дані, переконавшись, що нічого не змінилося.
Оскільки це критично, ви вважаєте за краще, щоб ніхто не міг змінювати нічого в таблиці customers, доки ви не завершите аналіз. Так ви запобігаєте незакріплюваним зчитуванням.
Ця вправа є частиною курсу
Транзакції та обробка помилок у SQL Server
Інструкції до вправи
- Встановіть відповідний рівень ізоляції, щоб запобігти незакріплюваним зчитуванням.
- Розпочніть транзакцію.
- Зафіксуйте транзакцію.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
-- Set the appropriate isolation level
___ ___ ___ ___ ___ ___
-- Begin a transaction
___ ___
SELECT * FROM customers;
-- some mathematical operations, don't care about them...
SELECT * FROM customers;
-- Commit the transaction
___ ___