Форум: "Базы";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];
ВнизОдновременная работа пользователей с БД 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 вся ветка
Форум: "Базы";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.037 c