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

Одновременная работа пользователей с БД Access.   Найти похожие ветки 

← →
Хохол ©   (2004-04-23 18:21) [0]

Добрый вечер всем. Помогите плз...
Такая проблема.
Есть БД Access. Есть приложение на Делфях. Коннекчусь через ADO.
Все в локалке находится, база одна - клиентов много. Один изменяет содержимое БД, а остальным, чтобы увидеть изменения, необходимо заново коннектиться. Вопрос! Реально ли сделать автоматическое обновление данных на всех клиентах, если кто-то один изменил их в БД. При этом вариант переоткрытия коннекта каждые 5 минут не подходит.
Надеюсь на помощь...


← →
sniknik ©   (2004-04-23 18:26) [1]

> вариант переоткрытия коннекта каждые 5 минут не подходит.
переоткрывай запросы, можно не через 5мин можно по событию, от посылки по сети к примеру.


← →
Хохол ©   (2004-04-23 19:10) [2]

2 sniknik ©
Ничччего не понимаю..... 8(
а если у меня нет запросов? Есть только АДОТэйблы. Все добавления через Post. А у ADOQuery событие посылки по сети я не нашел (если ты это имел в виду)... 8(


← →
sniknik ©   (2004-04-23 19:57) [3]

> а если у меня нет запросов? Есть только АДОТэйблы. Все добавления через Post.
этом случае советую их выкинуть и на их место вставить ADODataSet-ы у них есть запросы и Post тоже.

> А у ADOQuery событие посылки по сети я не нашел (если ты это имел в виду)... 8(
у них их нет, это должно твое приложение посылать, после изменений в одном броадкастное сообoение всем "переоткрыть датасеты!", остальные их ловят и переоткрывают.
(и тут начнется страшное, вместо работы юзера начнут смотреть на перемигивающиеся датасеты ;о) и материть тебя за потерянные только что введенные данные (в последней неподтвержденной строке))


← →
Хохол ©   (2004-04-23 20:17) [4]

>и тут начнется страшное, вместо работы юзера начнут смотреть на перемигивающиеся датасеты...
))))))))
Да, действительно страшно. А главное - как точно подмечено!!!
Спасибо за совет, за предупреждение (своевременное).
Ну, раз нет простого стандартного способа, буду еще долго думать...


← →
Locker   (2004-04-24 13:24) [5]

А если просто взять да и подумать? И запрашивать только изменившуюся запись?


← →
Leran2003   (2004-04-24 13:50) [6]

Кинуть на форму кнопку "Refresh", и научить юзверей ее нажимать... :))


← →
Хохол ©   (2004-04-24 17:01) [7]

(2) sniknik ©   (23.04.04 19:57) [3]
и тут начнется страшное, вместо работы юзера начнут смотреть на перемигивающиеся датасеты
Неужто я первый кто столкнулся с такой проблемой... =((
Ведь должнобыть кокоенибуть нормально решение, Без перемигиваний и передергиваний.

(2)Locker   (24.04.04 13:24) [5]
А если просто взять да и подумать? И запрашивать только изменившуюся запись?
Идея то конечно хорошая. Но как это реализовать ума не приложу.  Подскажешь?


← →
sniknik ©   (2004-04-24 21:38) [8]

> Неужто я первый кто столкнулся с такой проблемой... =((
> Ведь должнобыть кокоенибуть нормально решение, Без перемигиваний и передергиваний.
проблема не в том что невозможно перерисовать без дергания это можно, проблема в том что юзер получает изменения в данных в момент когда этого не ожидает, и хуже того в момент когда этого нельзя делать когда он эти же данные редактирует (естественно чтото будет утеряно, но что? кому решать, тебе или юзеру? или будеш предупреждение выдавать, типа "данные будут изменены, согласны? да нет", а когда работать тогда, учитывая что юзеров много и в любой момент ктото чтото меняет).


← →
Anatoly Podgoretsky ©   (2004-04-24 21:59) [9]

Ух и обматерит его пользователь за эти предупреждения, это еще хуже автообновления.

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



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

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



Память: 0.47 MB
Время: 0.021 c
3-1083182282
Курдль
2004-04-28 23:58
2004.05.23
Удаление записей из одной таблицы по ключам другой таблицы


3-1082722616
}|{yk
2004-04-23 16:16
2004.05.23
Триггер. Не записівается в блоб-поле


1-1083940236
Dll
2004-05-07 18:30
2004.05.23
Проблемка с asm


1-1084003411
Virus.exe
2004-05-08 12:03
2004.05.23
Как добавить свой пункт в меню?


1-1084270327
BlackTiger
2004-05-11 14:12
2004.05.23
Алгоритм переноса слов (на канве битмапа или принтера). Как/где?




   Наверх