|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
18.08.2011, 17:11 | #1 |
Новичок
Джуниор
Регистрация: 18.08.2011
Сообщений: 1
|
Как оповестить клиентов СУБД об изменении данных?
Есть клиент-серверное приложение. Delphi + MySQL 5.5.9.
Как реализовать оповещение (перечитать данные) всех клиентов присоединённых к БД в данный момент времени при изменении данных в таблицах. Если один из клиентов изменил данные, у других подключенных клиентов они должны обновиться. |
18.08.2011, 18:35 | #2 |
Форумчанин
Регистрация: 23.10.2008
Сообщений: 460
|
обновлять по таймеру таблицы
|
28.08.2011, 21:44 | #3 |
Пользователь
Регистрация: 20.01.2010
Сообщений: 54
|
А У MySQL событий нет, как у Firebird?
|
28.08.2011, 22:28 | #4 |
Заблокирован
Регистрация: 27.05.2010
Сообщений: 1,099
|
Один клиент сидит и правит некую запись. На момент сразу после начала правки этот клиент видит в некоем поле, к примеру,"Вася Пупкин".
Этот клиент, к примеру, желает изменить "Вася Пупкин" на "Петя Лупкин". Пока он правит поле, некий другой клиент взял да и исправил "Вася Пупкин" на "Коля Дрюков". Через пол-секунды, пока первый клиент все еще телится с редактированием "Васи Пупкина", еще один клиент взял да изменил это поле на "Федя Урюков" ЧТО в результате должен увидеть первый клиент ? Нахрен, спрашивается, вообще нужна такая расчудесная перспектива - "вышибание" у клиента СУБД "табуретки из-под ног", пока он видя тек.состояние записи телится в процессе ее визуального редактирования ?) А еще расчудесней перспективка, когда первый клиент долго и нудно редактирует Пупкина на Лупкина, а другой клиент взял да удалил этого самого беднягу Пупкина) Последний раз редактировалось Stilet; 29.08.2011 в 09:25. |
29.08.2011, 09:27 | #5 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
И еще стоит посмотреть блокируется ли запись, меняемая одним клиентом для других, ато действительно получится котовасия если клиенты друг другу мешать будут, редактируя одни и те же данные.
I'm learning to live...
|
|
29.08.2011, 09:31 | #6 |
Холост/Не замужем
Форумчанин
Регистрация: 13.11.2007
Сообщений: 283
|
Можно сделать запрет на редактирование и удаление уже открытой кем-либо записи. Т.е. в таблице сделай еще одно поле (прим. Editing) и при начале редактирования записи ставь в это поле цифру 1 что будет значить для других пользователей что эта запись уже редактируется и входить в нее нельзя, после окончания редактирования возвращай в это поле цифру 0
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ищу CRM решение/базу данных/учен клиентов/ рассмотрю варианты | Transfers_Kiev | Софт | 1 | 26.04.2012 11:19 |
Изменении данных в ячейках в зависимости от выползающего списка | adiko | Microsoft Office Excel | 3 | 27.05.2011 12:20 |
Как оповестить основной поток о каком-то событии в потоке (TThread)? | TwiX | Общие вопросы Delphi | 2 | 11.02.2010 02:57 |
Ошибка выполнения sql запроса при изменении данных | XATAB | БД в Delphi | 4 | 28.02.2009 15:44 |
Потеря данных при изменении рамера раздела | Drandulet | Софт | 5 | 06.07.2008 07:52 |