Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Пара вопросов по блокировкам / 2 сообщений из 2, страница 1 из 1
10.11.2002, 13:12:29
    #32066051
Осирис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пара вопросов по блокировкам
Добрый день.

Прочитал пор блокировки в связи с чем у меня возникла пара вопросов.

1. Как я понял, есть такая вещь, как коллективные блокировки (Shared). Как сказано в книжке, этот тип блокировок накладывается при операциях чтения данных, таких как SELECT. При этом SQL Server гарантирует, что пока стоит эта блокировка данные не изменятся.

У меня есть запрос, который делает данные отчет по таблице - нечто вроде select sum(), sum() from ... group by ... Этот запрос выполняется где-то около 30 секунд. То есть, если я правильно понял, в течении этих 30 секунд данные в этой таблице изменить никто не сможет ?
А можно ли этому помешать - запретить ставить блокировку на этот запрос ?

2. На какое время ставятся коллективные блокировки ? Если мой select выполняется на сервере 30 секунд и еще 30 секунд данные fetch-ся на клиент, на какой период была поставлена блокировка - 30 секунд или 1 минута (30+30) ?

Заранее благодарен.
...
Рейтинг: 0 / 0
10.11.2002, 13:42:49
    #32066063
Белов Владимир
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пара вопросов по блокировкам
2. Совершенно правильно.
Чтобы "снять" этот запрет, то пиши
select sum(...), sum(...)
from <table_name> with (nolock)

Данная блокировка, работает столько времени, сколько времени выполняется запрос - в твоем случае 30 секунд.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Пара вопросов по блокировкам / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]