Форум сайта python.su
SunnyЯ точно знаю, что в БД Oracle и MS SQL есть так называемые job'ы, которые ты сам создаешь - это задание, которое вполняет сервер по какому-либо событию. Все возможные события записаны на сервере под кодами, на каждый такой код ты можешь прописать задание. Это может быть сообщение в сеть об ошибке, сообщение на электронный адрес с описанием события или выполнение какого-то действия, например sql-запрос.
Я предполагаю что там используется какой-то тригер или сообщение, но как именно было бы любопытно узнать у опытных в этом вопросе
Офлайн
Насколько я знаю, job'ы можно формировать только в программе-Администраторе.
Офлайн
proDivaЭто можно делать по обычному cron-у или какой там в операционку штатный планировщик :-P А сам перечень job-ов держать в базе. Однако в контексте топика это не то. Им надо, я так понял, такое отображение, которое бы изменения в результате выборке показывало.
Насколько я знаю, job'ы можно формировать только в программе
Отредактировано (Март 4, 2008 13:12:42)
Офлайн
Насколько я понимаю, вопрос не в выборе бд, а в поведении wxGrid.
При заполнении грида стандартно используется статический набор данных(.fetchall()). При чем в дальнейшей жизни грида
он не принимает ни кокого участия. При работе с бд в однопользовательском режиме это особо не мешает(сам себе хозяин-
что хочу, то и ворочу). Ситуация меняется когда у Вас бд сетевая. Если кто-то на другой станции поменял данные в бд, у Вас
в гриде нечего не поменяется.
Сам сижу в этой луже. Несколько мыслей вслух.
Можно ли с помощью ОРМ (SQLAlchemy или SQLObject) подключить динамический источник данных и что это даст? Или хотя-бы получить сигнал что база была изменена?
Если нет, думаю остается выход через подлючение socket. Принцип видется такой:
При изменении данных в гриде на какой нибудь станции, она отправляет сообщение с этими изменениями серверу.
Он изменения обрабатывает и рассылает по всем рабочим станциям. Соответственно станции должны иметь методы для обработки сообщений. Это усложняет код проги, но умнее что-то в голову ни чего не приходит.
Отредактировано (Март 11, 2008 19:38:14)
Офлайн
SmarЗачем?
Или хотя-бы получить сигнал что база была изменена?
Офлайн
baluПопробую объяснить:
Офлайн
Тогда нужен application server, внутри которого уже ORM. Клиентские приложения доступа к базе не имеют, общаясь исключительно с этим сервером.
А в нем сигналы и прочая ерунда.
Отредактировано (Март 11, 2008 20:44:28)
Офлайн
Андрей СветловЧто это и с чем едят?
Тогда нужен application server
Офлайн
SmarЯ это понимаю. Только зачем так заморачиваться? Смысл в таком обновлении?
При получениии сигнала от базы грид проверяет свои данные и в случае необходимости обновляет их.
Отредактировано (Март 12, 2008 08:44:01)
Офлайн
baluА как лучше поступить?
mar написал:
При получениии сигнала от базы грид проверяет свои данные и в случае необходимости обновляет их.
Я это понимаю. Только зачем так заморачиваться?
Офлайн