Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Блокировки чтения на уровне строки / 5 сообщений из 5, страница 1 из 1
21.06.2002, 10:56:02
    #32033444
Sergan T
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Блокировки чтения на уровне строки
Как сделать блокировку на чтение на одну строку?
При использовании в селекте параметров UPDLOCK вместе с ROWLOCK дает не тот результат. Блокируется вся таблица монопольной блокировкой намерения - IX. И нельзя ни переписать, ни добавить ни одну строку в таблицу.
Один ROWLOCK без UPDLOCK блокирует нужную строку в таблице, но разрешает ее читать. А это не устраивает. Нужно чтобы эту строчку нельзя было прочитать, а таблица осталась доступной для редактирования. Как это можно решить? Задача - сделать многопользовательский доступ к данным.
...
Рейтинг: 0 / 0
21.06.2002, 11:05:44
    #32033447
Andrey(xsoni)
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Блокировки чтения на уровне строки
Привет :)

Если тебе надо разграничить доступ к наборам строк в одной таблице, попробуй использовать представления.
А уже на представления ты сможешь раздать права и привилегии.
...
Рейтинг: 0 / 0
21.06.2002, 12:11:58
    #32033459
Sergan T
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Блокировки чтения на уровне строки
Это не подходит. Придется переписывать все приложение. :( Есть ли какие-нибудь другие решения стандартными методами сиквела?
...
Рейтинг: 0 / 0
21.06.2002, 12:40:50
    #32033461
SergSuper
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Блокировки чтения на уровне строки
серверные блокировки предназначены для другого
то что Вы хотите имеет более высокий уровень и Вам это придётся делать самому
...
Рейтинг: 0 / 0
25.06.2002, 14:37:56
    #32033812
Gregory
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Блокировки чтения на уровне строки
Может попробовать в SELECT . там где не должно видеть заблокированные записи использовать HINT With(Readpast) ... Решение может и не оптимальное ( неграмотное ?) , но работает.
Подробнее: в одном CONNECTION открываем транзакцию и в ней блокируем запись до конца транзакции, коею не спешим закрывать.
Все операторы чтения из этой таблицы выполняем через другие CONNECTION с указанным хинтом.
Плата - лишняя спящая CONNECTION на каждый акт блокировки записи.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Блокировки чтения на уровне строки / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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