Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.18;
Скачать: CL | DM;

Вниз

Работа с Interbase   Найти похожие ветки 

 
Alexandr ©   (2002-03-28 10:12) [40]

тогда надо исходники в FIBplus или IBX править,что бы обновлять не текущую запись, а любую заданную.


 
GrayMage ©   (2002-03-28 10:18) [41]

Когда-то тему обновления поднимали, как я помню ниче путного предложить никто не смог. Думал с появлением 6 Delphi что-то изменилось. А так, единственная правильная мысль в Реальном времени обновлять только самые необходимые данные, остальные только по таймеру совместно с совокупностью 5 - n эвентов или по кнопке.


 
Alexandr ©   (2002-03-28 10:27) [42]

да ничего тут не может измениться.

Такова природа вещей


 
kalex77   (2002-03-28 10:46) [43]

А если использовать сервер приложений?
Пусть работа с БД идет через него, а он при минимальной функциональности оповещает клиента об обновлениях.

Кроме нужно подбирать уровень изоляции под свою задачу.


 
Mad_Vad   (2002-03-28 10:51) [44]

Ну чего спорить то?

ib.demo.ru

Там Вы найдете все ответы на интересующие Вас вопросы по Interbase/Firebird.


 
Fareader ©   (2002-03-28 11:17) [45]

на Ib.demo.ru был предложен вариант обновления данных на клиентах, без использование событий IB, с помощью дополнительной таблицы, в общем то нелохое решение. А у меня по таймеру обновляются данные на клиентах через каждые 5 минут и нормально, а чтобы не переоткрылось пока чего-то редактируется - выбрасываем флаг и таймер не переоткрывает dataset пока он в редакции, можно это углубить и расширить, но это дело вкуса. вы проблему раздули из ничего я полностью согласен с Alexandr`ом:
"Это не надо в 99% случаев, даже когда сначала кажется, что именно так надо". человек все равно не сможет обработать данные, которые будут ему предлагаться каждую секунду.


 
Alexandr ©   (2002-03-28 11:21) [46]

на fibplus.com.ua такая статья

а в остальном согласен


 
Vladimir_Shk ©   (2002-03-28 12:06) [47]

Вообще я так думаю, данная проблема решается через использование ADO и ServerCursor - Dynamic. Тогда на каждой машине данные будут актуальными. Хотя сами они конечно не перерисовываются, а обновляются при Dataset.Refresh или просто пролистывании содержимого экрана.


 
MAxiMum ©   (2002-03-28 13:14) [48]

Ну что касается лично меня, то у меня клиентов может и не быть вовсе, а может и 3-4 максимум. Реально - 1-2. Думаю, если переоткрывать всё при обновлении, ничего с ними не случится.
Другое дело, что действительно, переоткрытие может быть плохим помощником, когда пользователь редактирует данные.
Кстати, я придумал, как можно обновлять данные только на всех клиентах, кроме того, кто сделал изменения: послыать сообщение типа: POST_TABLENAME_COMPNAME. Тогда по имени я смогу определить тип события, имя таблицы и имя компьютера.
А зачем нужно BDE? Я лично без него работаю. Связь без алиасов через IBDatabase.


 
GrayMage ©   (2002-03-28 14:04) [49]

Я не говорил что нужно BDE. Я говорю про то, что BDE таскает по сети всю базу, и при обновлении скажем одной строки, как, повторюсь я где-то слышал, BDE должна обновлять тот же самый набор перечитыванием всей базы. И делает она это сравнительно быстро. То есть, теоретически, при клиент-серверном подходе, скорость даже при обновлении не должна падать если грамотно подойти к организации эвентов, Query, и использованию многопоточности.


 
MAxiMum ©   (2002-03-28 14:10) [50]

Конечно, в большом приложении, да, нужно грамотно подходить к организации событий. Но когда клиент - один-два человека. Я считаю это ненужным. Просто обновление после редактирования.



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

Текущий архив: 2002.04.18;
Скачать: CL | DM;

Наверх




Память: 0.56 MB
Время: 0.009 c
1-57789
commm
2002-04-05 17:40
2002.04.18
как узнать имя (логин) текущего пользователя windows?


14-57843
Sandra
2002-03-07 20:54
2002.04.18
Даме на 8-е марта :-) нужен текст из из ячейки DBGrid (Стандартный компонент)


4-57913
skywalker
2002-02-15 13:20
2002.04.18
Получение информации о процессах под NT!!!!!!!!


3-57661
KVT2000
2002-03-29 08:53
2002.04.18
DBGrid, последовательность событий


1-57749
vadim2
2002-04-05 11:24
2002.04.18
а как узнать что drag&drop успешно выполнилось? например: