Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Помогите с блокировкой / 7 сообщений из 7, страница 1 из 1
16.04.2001, 14:18
    #32004390
Помогите с блокировкой
Всех с рождеством

В stored procedure вставляются и изменяются записи.
Как сделать так, чтобы данные записи были не доступны на чтение, пока не произошла операция COMMIT TRAN.
Как я понимаю надо выставить какой-то хитрый уровень изоляции, вот только какой.

Спасибо
...
Рейтинг: 0 / 0
16.04.2001, 14:24
    #32004392
Garya
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с блокировкой
А если их откроют на чтение ДО того, как ты заблокируешь .
...
Рейтинг: 0 / 0
16.04.2001, 14:38
    #32004394
Помогите с блокировкой
Думаю образутся очередь. :о)

Идея в том, что через определенное время мне необходимо подкачивать изменения в target таблицы. И делается это через процедуру. Если он пользователь записи до подкачки, то особенно не страшно, получит не обновленные данные.

Спасибо за ответ, но как то ожидалось чего то более по теме.
...
Рейтинг: 0 / 0
16.04.2001, 17:58
    #32004401
Genady
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с блокировкой
>Как я понимаю надо выставить какой-то хитрый уровень изоляции, вот только какой.
REPEATABLE READ, синтаксиса как ставится не помню, а в BOL лень лезть, посмотрите сами
...
Рейтинг: 0 / 0
16.04.2001, 18:26
    #32004402
Garya
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с блокировкой
По-моему, ты не доконца воспринял то, что я хотел сказать. Сама операция чтения возникает на доли секунды (ну, на секунды, отсилы). После чего сбуферизованное на клиенте содержимое набора записей лицезреют на клиенте, а блокировка уже снялась, в том числе Repeateble Read. Ты же, насколько я понял, хочешь, чтобы НА SCREEN-е ничего не высвечивалось. А у тех, у которых уже светится - чтобы погасло. Такие штуки делаются врукопашную. Тут раньше проскакивало обсуждение по взаимному влиянию клиентов друг на друга (по событиям). Вопрос это не такой простой, как может показаться. SQL-сервер не имеет встроенных средств для генерации некоторых событий на клиентах (кроме ошибок, которые кроме как событие ошибки больше никак не воспринимается, да и работать может только по инициативе клиента).
Получается, кроме соединения с сервером нужен отдельный COM-сервер для обмена сообщениями между всеми клиентами.
...
Рейтинг: 0 / 0
16.04.2001, 18:28
    #32004403
Помогите с блокировкой
Спасибо.
Как то все запутано с этими блокировками, никак понять не могу
...
Рейтинг: 0 / 0
17.04.2001, 10:16
    #32004418
Genady
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с блокировкой
2 DmitryGolubev

Да ничего там не запутано

По умолчанию на сервере стоит уровень изоляции Read commited, т. е. ресурс блокируется только во время чтения, при этом используется shared lock. В случае REPEATABLE READ ресурс блокируется на время выполнения транзакции, чем выше уровень изоляции тем жестче блокировка. Почитайте в BOL Isolation levels.
Если все равно непонятно, опишите задачу, а мы вместе прикинем, что лучше сделать
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Помогите с блокировкой / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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