Вниз
Скачать: CL | DM;

Блокировка записей   Найти похожие ветки 

 
me2   (2003-03-13 09:09) [0]

Народ, объясните пожалуйста как устанавливается блокировка записи в многопользовательском приложении, т.е. если я редактирую запись никто другой ее редактировать не сможет.


 
zacho ©   (2003-03-13 09:20) [1]

Почитай на www.ibase.ru и в документации о транзакциях, уровнях изоляции и т.п.
Коротко: если в контексте какой-либо транзакции были изменены записи, то до завершения этой транзакции другие транзакции изменить эти записи не смогут. Если тебе нужно заблокировать запись, можно сделать "холостой" апдейт, т.е. UPDATE MYTABLE SET MYFIELD=MYFIELD WHERE ...


 
me2   (2003-03-13 09:56) [2]

А как сообщить пользователю, что в данный момент запись отредактировать неудалось, а то он подумает, что внес изменения, а на самом деле - нет.


 
zacho ©   (2003-03-13 11:06) [3]

Получишь от сервера сообщение об ошибке. Вот его и обрабатывай.


 
SergeyNew   (2003-03-13 11:46) [4]

2zacho

Если один пользователь выполняет Transaction.CommitRetaining то другой пользователь уже не может после этого изменять запись, т.к. выдается ошибка. Чтобы редактировать эту надо выйти из проги и зайти в нее опять. Если же делать Transaction.RollBackRetaining, то другой юзер может редактировать запись. Что делать?


 
Johnmen ©   (2003-03-13 12:14) [5]

>SergeyNew (13.03.03 11:46)
>...другой пользователь уже не может после этого изменять запись

Очень даже может ! Просто надо определиться со стартом и завершением транзакций.

>Чтобы редактировать эту надо выйти из проги и зайти в нее опять

Значит прога написана кривовато...:)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.016 c
6-100359
LAMO)(
2003-02-07 23:19
2003.03.31
Game


7-100479
maxim2
2002-12-12 14:14
2003.03.31
Как узнать есть ли привод CD-ROM в компе


1-100237
dm37
2003-03-18 12:08
2003.03.31
Работа с файлами


1-100274
oomneeq
2003-03-19 11:10
2003.03.31
Снова про хэш функции


14-100401
Balda
2003-03-13 20:23
2003.03.31
Блин, как в гриде удалить просто запись? че нажать то?:-)




   Наверх