Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 21.06.2013, 06:35
Zhigalov Zhigalov вне форума
Начинающий
 
Регистрация: 27.05.2009
Сообщения: 100
Репутация: -1277
По умолчанию отслеживание изменений

Не как не могу сообразить как сделать. Есть БД. В нее с некоторой периодичностью(раз в 4 секунды) добавляются записи. Но иногда происходит сбой работы ПО и данные в БД не записываются. Надо как нибудь отслеживать записи в БД. Допустим по ID. То есть сравнивать изменение каждые допустим 10 минут. Не как не могу сообразить.

Этим запросом вычисляю кол-во записей в БД.
Код:
SELECT COUNT(RecordID)
FROM [RGBTEC4].[dbo].[Data_033308]

Может быть как то по таймеру. Создать два таймер с периодом 3 и 10 минут. И сравнивать их если результат запроса по таймеру с периодом в 3 минуты равен результату запроса таймера с периодом 10 минут. То выдать сообщение допустим.

Последний раз редактировалось Zhigalov, 21.06.2013 в 07:23.
Ответить с цитированием
  #2  
Старый 21.06.2013, 08:24
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

а доработать ПО, которое данные в базу записывает, чтобы пищало и отправляло письмо или смс при сбое?
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #3  
Старый 21.06.2013, 08:46
Аватар для alexusankov
alexusankov alexusankov вне форума
Новичок
 
Регистрация: 27.08.2012
Сообщения: 78
Версия Delphi: C++/Delphi 2010
Репутация: 10
По умолчанию

Цитата:
Сообщение от NumLock
а доработать ПО, которое данные в базу записывает, чтобы пищало и отправляло письмо или смс при сбое?
Солидарен с вышесказанным, у меня к примеру при обновлении БД , ПО пишет в отдельную таблицу, когда прошло обновление.
Есть возможность дорабатывать исходное ПО?
Ответить с цитированием
  #4  
Старый 21.06.2013, 09:20
Zhigalov Zhigalov вне форума
Начинающий
 
Регистрация: 27.05.2009
Сообщения: 100
Репутация: -1277
По умолчанию

ПО стороннее возможности доработать его нету.
Ответить с цитированием
  #5  
Старый 21.06.2013, 10:17
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

тогда, опять же зависит от БД, можно создать триггер на таблицу(ы), который будет вести лог или просто писать дату последнего добавления записей.
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #6  
Старый 21.06.2013, 10:19
Zhigalov Zhigalov вне форума
Начинающий
 
Регистрация: 27.05.2009
Сообщения: 100
Репутация: -1277
По умолчанию

Надо чтоб программа выдавала сообщения о том что там что то не так в БД.
Все я уже сам через таймеры написал. Просто оцениваю кол-во записей в БД и сравниваю их.
Ответить с цитированием
  #7  
Старый 21.06.2013, 11:27
Аватар для Yurk@
Yurk@ Yurk@ вне форума
Специалист
 
Регистрация: 07.09.2007
Адрес: Украина, г. Днепропетровск
Сообщения: 892
Версия Delphi: 7 + ОгнеПтица
Репутация: выкл
По умолчанию

Цитата:
Надо чтоб программа выдавала сообщения о том что там что то не так в БД.
и
Цитата:
ПО стороннее возможности доработать его нету.
что-то я никак не уловлю логики(

UPD.
если всё-же возможность дописать ПО имеется - я когда-то выходил из ситуации таким образом:
если по каким-то причинам запись в БД не удалась - я писал эти данные в текстовый файл рядом с прогой. а потом при следующей попытке записи проверял наличие записей в файле - если они там есть пытался записать их еще раз ... в случае успеха - удалял строку с файла и т.д.
метод может и не самый гуд, но сбоев у подобной схемы за 2 года еще не было)
__________________
Поживу - увижу, Доживу - узнаю, Выживу - учту.
[P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз

Последний раз редактировалось Yurk@, 21.06.2013 в 11:32.
Ответить с цитированием
  #8  
Старый 21.06.2013, 11:54
Zhigalov Zhigalov вне форума
Начинающий
 
Регистрация: 27.05.2009
Сообщения: 100
Репутация: -1277
По умолчанию

Есть ПО(стороннее) которое производит запись в БД.
Есть ПО(свое) которое выводит значения из БД каждые 2 секунды.
На ПО(свое) сидит смотрит оператор за циферками следит. И когда произойдет сбой ПО(стороннее) т.е оно перестанет писать данные в БД.
ПО(свое) должно сообщить оператору, а не достоверности данных.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 14:15.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter