Re: Блокирование таблиц в транзакциях, UPDATE и INSERT
От: Akzhan Россия http://www.akzhan.midi.ru/devcorner/
Дата: 13.11.02 16:34
Оценка: 34 (3)
Вообще для этого случая в MS SQL есть только одна дейтвительно работающая тактика:

Большинство запросов на выборку на самом деле не нуждаются в уровне изоляции READ COMMITTED, некоторая несинхронизированность также добпустима, и это можно проиллюстрировать. Поэтому на такие объёмлющие выборки всегда ходим с with(nolock) option.

Пратически все запросы за обновление и вставку, если они не массовые, желательно объявлять with(rowlock) option. Т.к., к сожалению, эскалация блокировок сервера работает крайне неудачно, вызывая deadlocks гораздо раньше, чем следует. С этой опцией серверу приходиться тяжелее, но хотя бы можно работать.

При этом общий уровень изоляции лучше оставить READ COMMITTED.

Это моё личное мнение.
С уважением,
Акжан, http://www.akzhan.midi.ru/devcorner/ — мой уголок разработчика
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.