Актуализирано на 23 април 2015 г.
Миналата година събрах поредица от публикации, целящи да разгледат подробно паралелността, свойствата на ACID на изразите и транзакциите и всяко от основните нива на изолация в SQL Server. Сега приключих поредицата с последен пост за вероятно най-често използваното умишлено ниво на изолация:четене без ангажимент („NOLOCK“).
Свойствата на ACID на изявления и транзакции |
Ниво на изолация, което може да се сериализира |
Повтарящото се ниво на изолация на четене |
Нивото на изолация, ангажирано за четене |
Прочетете изолацията на ангажирани моментни снимки |
Промени на данните при изолиране на завършена моментна снимка за четене |
Нивото на изолация на МОМЕНТАЛНА СНИМКА |
Нивото на изолация за четене без ангажимент |
Тъй като сте имали търпение за последната вноска, мога да предложа някои други фонови четения/гледани при четене без ангажименти:
- Lubor Kollar :Предишно ангажираните редове може да бъдат пропуснати, ако се използва намек NOLOCK
- Аарон Бертран:Лоши навици:Поставяне на NOLOCK навсякъде
- Крейг Фрийдман:Неуспешна заявка с четене без ангажимент
- Aaron Bertrand :Избягвайте използването на NOLOCK на SQL Server оператори UPDATE и DELETE
- Дейвид Лийн:SQL Server NOLOCK съвет и други лоши идеи
- Sunil Agarwal :Concurrency Series:Защо получавам блокиране, когато използвам ниво на изолация Read Uncommitted или използвам NOLOCK намек?
- Тони Роджърсън:Timebomb – Проблемът с последователността с NOLOCK / ПРОЧЕТЕНЕ НЕПОВЪРЖЕНО (и последващо действие)