Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.11.2009, 22:14   #1
maks448
 
Регистрация: 31.01.2009
Сообщений: 8
По умолчанию Как отследить изменения в таблице DBF?

Собственно вопрос в заголовке темы. Иными словами есть TTable, связанный с таблицей, в которую некое стороннее приложение пишет некие записи. Нужно в реальном времени отслеживать появление новых записей и проверять их на соответствие заданному критерию. На Делфи стал писать недавно, поэтому просьба ногами не пинать, если сочтете вопрос тупым. Спасибо.
maks448 вне форума Ответить с цитированием
Старый 27.11.2009, 23:17   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

таблица DBF это банально обычный двоичный файл.
Значит либо вешайтесь на метод оповещения файловой системы о изменениях
либо в цикле (по таймеру) проверяйте размер DBF файла...

p.s. ещё, как вариант, можно попробовать в таймере выполнять запрос количества записей в файле:
SELECT COUNT(*) FROM YOUR.DBF
это достаточно быстрая операция даже на больших файлах.

Цитата:
Иными словами есть TTable
А вот это Вы зря!!!! Использование BDE - это очень плохо... Проблем много.. да и устарело уже лет 5...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 28.11.2009, 20:20   #3
maks448
 
Регистрация: 31.01.2009
Сообщений: 8
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
Значит либо вешайтесь на метод оповещения файловой системы о изменениях
А можно об этом чуть подробнее? А еще лучше пример (уж не сочтите за наглость).
maks448 вне форума Ответить с цитированием
Старый 28.11.2009, 20:45   #4
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Боюсь, это будет пока сложно для вас.
Сделайте проще - поставьте таймер секунд на пять (хотя, если локально, то и 1 секунда нормально будет) и по его срабатыванию делайте запрос, который вам посоветовал уважаемый Serge_Bliznykov. Вот и все.
Только нужно в какой-то переменной помнить предыдущее число записей (чтоб было, с чем сравнивать).
mihali4 вне форума Ответить с цитированием
Старый 29.11.2009, 20:42   #5
maks448
 
Регистрация: 31.01.2009
Сообщений: 8
По умолчанию

Спасибо, буду пробовать...
maks448 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как хранить двумерный массив в таблице DBF ИВэТэшка Помощь студентам 1 04.06.2009 15:31
Слияние шаблона с данными из таблице, и как подсичтать значение количества полей в таблице n4ela Microsoft Office Access 3 07.03.2009 12:04
как отследить изменения в базе данных unit-85 Помощь студентам 2 13.08.2008 11:29
Изменение пути к таблице .dbf Tanuska___:) БД в Delphi 16 22.04.2008 15:52
удалить записи в таблице Dbf. pups БД в Delphi 7 15.12.2006 19:19