Главная страница
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.013 c
14-57844
KvORubin
2002-03-07 15:40
2002.04.18
Просчёт ВРЕМЕНИ затраченного на интернет !!!


3-57584
Roman_tutov@mail.ru
2002-03-22 18:57
2002.04.18
Delphi & postgress


14-57888
ПАМАХИ МНЕ!
2002-03-08 21:14
2002.04.18
ПОМОГИТЕ, УВАЖАЕМЫЕ МАСТЕРА!


1-57725
Fast
2002-04-08 16:02
2002.04.18
Dos кодировка


1-57777
Erik
2002-04-05 22:20
2002.04.18
Передача буфера.