Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 28, 2014 21:29:55

ingfa_1981
Зарегистрирован: 2014-01-25
Сообщения: 200
Репутация: +  1  -
Профиль   Адрес электронной почты  

Тригер

Здравствуйте
У меня существует проблема, которую не смог решить самостоятельно.
Если в базе данных изменяется значение одного поля. То должно произойти срабатывание оповещения об аварии.
интересует следующее. Как сделать так что бы это срабатывание произошло один раз? Интересует ни больше сам код, а идея. Кто знает подскажите.

Офлайн

#2 Авг. 28, 2014 21:45:50

stosu.ru
Зарегистрирован: 2014-08-26
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Тригер

ingfa_1981
ЗдравствуйтеУ меня существует проблема, которую не смог решить самостоятельно.Если в базе данных изменяется значение одного поля. То должно произойти срабатывание оповещения об аварии.интересует следующее. Как сделать так что бы это срабатывание произошло один раз? Интересует ни больше сам код, а идея. Кто знает подскажите.

А если добавить в таблицу еще одно булево поле, являющееся индикатором срабатывания оповещения?



НИЛ СТОСУ / stosu.ru

Отредактировано stosu.ru (Авг. 28, 2014 21:46:07)

Офлайн

#3 Авг. 28, 2014 22:06:31

ingfa_1981
Зарегистрирован: 2014-01-25
Сообщения: 200
Репутация: +  1  -
Профиль   Адрес электронной почты  

Тригер

Какое например, я новичок в mysql?
В поле у меня единица это срабатывание, ноль это норма. Как только появилась единица, на какое то время(она может и пропасть), должно измениться соседнее поле тоже допустим на единицу. Произойдет звонок и программа по окончании звонка с оповещением выдаст ноль во вторую ячейку, что будет являться сигналом не оповещать больше. Но все равно, если авария не устранится, произойдет повторный звонок из за первой ячейки.

Как сделать так, что бы больше не звонить по этому случаю до ручного сброса, но продолжить мониторить и реагировать на другие поля, других устройств? Может есть другие методы решить эту проблему?

Офлайн

#4 Авг. 28, 2014 22:23:09

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10012
Репутация: +  857  -
Профиль   Отправить e-mail  

Тригер

ingfa_1981
В поле у меня единица это срабатывание, ноль это норма.
Сделай состояния 0, 1, 2



Офлайн

#5 Авг. 28, 2014 23:55:31

den4ik
Зарегистрирован: 2014-07-20
Сообщения: 59
Репутация: +  4  -
Профиль   Отправить e-mail  

Тригер

Добавить еще таблицу состояний, на отслеживаемую закинуть триггер, и по нему обновлять таблицу состояний…

Офлайн

#6 Авг. 29, 2014 14:44:42

ingfa_1981
Зарегистрирован: 2014-01-25
Сообщения: 200
Репутация: +  1  -
Профиль   Адрес электронной почты  

Тригер

Мои домыслы на сегодняшний день таковы.
три поля в таблице
первое, это состояние текущей аварии, присуствует она или нет это => 0 или 1
второе , это состояние было оповещение или нет это => 0 или 1
третье , это состояние нужно оповещать сейчас или нет это => 0 или 1
Дополнительно в таблице существует поле названия оборудования, отталкивая от этих 4 значений, произведу оповещение
в исходном состоянии будет
t13006:0:0:0
при срабатывании аварии станет
t13006:1:0:1
при оповещении
t13006:0 или 1:1:1
при сработавщем оповещении
t13006:0 или 1:1:0
при сбросе с веб страницы после устранения аварии
t13006:0:0:0
Что скажите на мои предположения о работе данного подобия алгоритма?

Офлайн

#7 Авг. 29, 2014 19:14:30

den4ik
Зарегистрирован: 2014-07-20
Сообщения: 59
Репутация: +  4  -
Профиль   Отправить e-mail  

Тригер

ingfa_1981
Мои домыслы на сегодняшний день таковы…
А отслеживания времени срабатывания не будет?

Отредактировано den4ik (Авг. 29, 2014 19:17:23)

Офлайн

#8 Авг. 29, 2014 21:07:05

ingfa_1981
Зарегистрирован: 2014-01-25
Сообщения: 200
Репутация: +  1  -
Профиль   Адрес электронной почты  

Тригер

Вот не знаю как это сделать учет времени неработоспособности устройства. Подскажите?
Это оно???
http://habrahabr.ru/post/37693/

Отредактировано ingfa_1981 (Авг. 29, 2014 21:15:33)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version