Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Поддержка актуальности данных в грде, Oracle, realtime system 
:(
    Опции темы
ivashkanet
  Дата 5.3.2007, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 4
Всего: 149



Есть приложение, которое напрямую данные в базе не изменяет.
Таких приложений на разных машинах очень много, они по чуть-чуть (раз в 5-10 минут) изменяют эти данные.
Каждое такое приложение должно иметь актуальные данные с актуальностью, допустим, 10 сек.

Это введение, чтобы прочувствовать ситуацию smile

Для простоты пусть это будет обычная форма с DataGridView, который забинжен на dataTable с DataAdapter'ом 

Так как данных в гриде не так уж и много (100 -200 элементов), то, в принципе, можно DataTable постоянно обновлять DataAdapter.Fill(..) (раз в 10 сек, например).

Но это совсем не красиво smile

Полазил по оракловскому форуму, нашел похожую ситуацию http://forums.oracle.com/forums/thread.jsp...478&#524478

Там предложили, по сути, только одно решение:
Повесить на таблицу триггер (либо запустить в базе приложение, которое будет отслеживать изменения), который будет уведомлять приложение об изменениях в таблице.

Но я в этом совсем не особо секу. Нужно разбираться.

Может есть какое-то другое решение?

Жду ваших комментариев, ivashkanet 

P.S. Как вы уже поняли, БД --- Oracle.


PM MAIL WWW ICQ   Вверх
mr.DUDA
Дата 5.3.2007, 14:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 8
Всего: 232



Если приложения работают с бд не напрямую, а через серверную прослойку бизнес-логики, можно организовать нотификацию на своём уровне:
- послали обновлённые данные серваку
- сервак сохранил их в БД
- у себя в статик-переменной сохранил пометку "такие-то записи изменились в такое-то время"
- клиент опрашивает сервак каждые N секунд, спрашивает какие записи изменились с последнего раза, сервак отдаёт их клиенту

Типа того.


--------------------
user posted image
PM MAIL WWW   Вверх
ivashkanet
Дата 5.3.2007, 14:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 4
Всего: 149



Цитата(mr.DUDA @  5.3.2007,  13:28 Найти цитируемый пост)
Если приложения работают с бд не напрямую

В данный момент напрямую. Так что этот вариант не особо устраивает, так как нужно еще и убедить заказчика в целесообразности.

Цитата(mr.DUDA @  5.3.2007,  13:28 Найти цитируемый пост)
- клиент опрашивает сервак каждые N секунд, спрашивает какие записи изменились с последнего раза, сервак отдаёт их клиенту

Вот это и есть основная проблема smile Лучше всего, если бы в роли сервака выступал сам Oracle, а не мое приложение, которое мне нужно держать в курсе об обновлениях.


Меня волнует вопрос: неужели я один столкнулся с такой проблемой? ИМХО, это распространенная задача.

Добавлено @ 14:50 
Модераторам: А можно мне продублировать эту тему на нашем форуме по Oracle-у?
PM MAIL WWW ICQ   Вверх
mr.DUDA
Дата 5.3.2007, 15:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 8
Всего: 232



Дублируй. А ещё я бы советовал спросить или поискать на sql.ru, скорее всего такая тема уже подымалась.


--------------------
user posted image
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Базы данных под .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0461 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.