Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.08.12;
Скачать: CL | DM;

Вниз

нужно сбросить закешированные записи в базу   Найти похожие ветки 

 
RA ©   (2007-04-25 11:47) [0]

Есть прога не делфах с использованием BDE. Таблицы paradox. Во время работы прога постоянно изменяет таблицы базы. Но одна мелочь - прога глюковатая, поэтому частенько виснет, если её снять через диспетчер задач, то все изменения когторые она сделала в базе проподают. Т.е. на сколько понимаю BDE кеширует записи, а после снятия программы не применяет изменения.
Можно ли как-то заставить BDE принудительно сбрасывать весь кэш на диск, чтобы если прога всё же вылетит данные в базе остались.


 
Desdechado ©   (2007-04-25 12:05) [1]

FlushBuffers (в проге, естественно)


 
Виталий Панасенко ©   (2007-04-25 13:06) [2]

LOCAL SHARE=TRUE если БД локальная


 
RA ©   (2007-04-25 15:17) [3]

Пишу FlushBuffers после каждого обновления таблицы. Вот так:
procedure TDataModule2.TableUpadateAfterPost(DataSet: TDataSet);
begin
 TableUpadate.Close;
 TableUpadate.Open;
 TableUpadate.FlushBuffers;
 TableUpadate.Close;
 TableUpadate.Open;  
end;

Но всё равно кеш не сбрасывается.


 
Desdechado ©   (2007-04-25 15:32) [4]

Что за тип у твоего урадата?
И почему сброс буферов после открытия, а не закрытия? И зачем после Post переоткрывать набор данных, данные-то при этом в таблицы могут и не попасть?


 
RA ©   (2007-04-25 15:44) [5]

Почему они могут не попасть, если я переоткрываю уже AfterPost?



Страницы: 1 вся ветка

Текущий архив: 2007.08.12;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.018 c
2-1184088293
Bora_ru
2007-07-10 21:24
2007.08.12
Копирование каталога


11-1167918954
First
2007-01-04 16:55
2007.08.12
Уничтожение таймера в OnTimer.


2-1184826661
pathfinder
2007-07-19 10:31
2007.08.12
Сообщение компилятора Delphi 2006..


3-1177243506
ZevSS
2007-04-22 16:05
2007.08.12
Обратная связь с MS SQL


2-1184854845
Avokain
2007-07-19 18:20
2007.08.12
Числа вида 1,000,000