Реализация блокирования

IBX, FIBPlus, UIB, ADO, .Net и прочее-прочее-прочее, в общем все, что относится к созданию приложений, работающих с InterBase, Firebird и Yaffil - клиент-серверных, трехзвенных, консольных и т.п.

Модератор: kdv

Ответить
Lars
Сообщения: 86
Зарегистрирован: 21 дек 2005, 16:34

Реализация блокирования

Сообщение Lars » 25 авг 2006, 06:29

Пользователь № 1 просматривает запись. Решает редактировать, меняет первое поле.
Пользователь №2 входит в ту же запись на просмотр.
Пользователь №1 не принимает изменений, переходит между полями, продолжает редактировать.

Необходимо настроить транзакции таким образом, чтобы при входе пользователя №2 выдавалось сообщение о том, что редактируется запись.

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Сообщение Dimitry Sibiryakov » 25 авг 2006, 07:51

Если второй входит только на просмотр, то можно сразу вспоминать литовскую фамилию Обломайтис.

Lars
Сообщения: 86
Зарегистрирован: 21 дек 2005, 16:34

Сообщение Lars » 25 авг 2006, 07:59

Dimitry Sibiryakov писал(а):Если второй входит только на просмотр, то можно сразу вспоминать литовскую фамилию Обломайтис.
Ну это в лучшем варианте :( , а при редактировании тогда? Польз №2 отредактировал, там старые данные. Пока редактировал, Польз. №1 изменил и запостил запись. Польз№2 перекрывает измения 1?

Сообщить можно ему об этом?

1. Открыл 1
2. Открыл 2
3. Изменил 1
4. Запостил 1
5. Изменил 2
6. Перекрыл всю работу 1.

Настройки транзакции?!

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Сообщение Dimitry Sibiryakov » 25 авг 2006, 08:02

concurrency должно хватить.
Советую почитать статью про "пессимистичные блокировки" на сайте. Не зря же ее Дмитрий писал...

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 25 авг 2006, 12:54

Невский писал. www.ibase.ru/devinfo/pslock.htm

Ответить