Проблема такая: Нужно сделать так,чтобы при выборе записи(select) одним клиентом,другому не было возможности ее ни редактировать, ни смотреть(Firebird). Можно ли это как-то сделать программно(Delphi)? Заранее благодарен!
"kardash24" <51347@users.rsdn.ru> wrote in message news:1687049@news.rsdn.ru... > Проблема такая: Нужно сделать так,чтобы при выборе записи(select) одним клиентом,другому не было возможности ее ни редактировать, ни смотреть(Firebird). Можно ли это как-то сделать программно(Delphi)? Заранее благодарен!
Здравствуйте, kardash24, Вы писали:
K>Проблема такая: Нужно сделать так,чтобы при выборе записи(select) одним клиентом,другому не было возможности ее ни редактировать, ни смотреть(Firebird). Можно ли это как-то сделать программно(Delphi)? Заранее благодарен!
Насколько знаю, ни один сервер БД не блокирует читаемые записи от чтения в других транзакциях.
А Firebird еще и версионный, так что старая версия для чтения останется, даже если ее изменить и не завершить транзакцию.
Блокировочный же сервер просто будет висеть, пока не завершится транзакция, блокировавшая запись, входящую в условия select.
Скорее всего, проблема в проектировании БД или приложения. Может быть, стоит создать еще таблицу со списком заблокированных записей и при отображении исключать их, если они заблокированы другим пользователем? В этом случае (да и во многих других) стоит отобрать у пользователя права на просмотр и редактирование этих таблиц и сделать все через хранимые процедуры.
Здравствуйте, Alex.Che, Вы писали:
FN>> Насколько знаю, ни один сервер БД не блокирует FN>> читаемые записи от чтения в других транзакциях.
AC>Каждый заблуждается в меру широты глубины своих познаний...
Привет, Fedor!
Вы пишешь 21 февраля 2006:
FN>>> Насколько знаю, ни один сервер БД не блокирует FN>>> читаемые записи от чтения в других транзакциях.
AC>> Каждый заблуждается в меру широты глубины своих познаний...
FN> Пример можно?
Здравствуйте, Alex.Che, Вы писали:
AC>Читай про уровни изоляции транзакций.
Может хватит уже загадочности? Даже если кто-то заблуждается или не доконца четко высказывает свою мысль — абстрактые фразы в воздух делу не помогут. Если уж взял на себя труд отвечать в форуме, будь любезен ответить полно и развернуто иначе ни к чему кроме флейма это не приведет. Тем более что уровни изоляции здесь непричем.
Здравствуйте, Alex.Che, Вы писали:
AC>Ваня, я тебе денег должен?
Надо проверить...
Но вто что точно ты должен — это нормально отвечать в форумах. Я модератор терпеливый, но терпение мое уже заканчиается.
Это последнее сообщение с тобой на эту тему, можешь считать это официальным модераторским предупреждением.
Отвечать на это сообщение не стоит, все претензии на moderator@rsdn.ru