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

Вниз

Потеря данных   Найти похожие ветки 

 
Andreika   (2002-12-31 18:16) [0]

Драсьте!
Есть простенькая прога по обработке БД (Paradox: две связанные таблицы + два справочника). Однако? приходится в настоящее время заносить большой объем информации. И вот давеча юзер пожаловался мне, что, после того как у него завис комп, улетели в неизвестном направлении все записи, которые он усердно забивал, начиная с момента ее открытия. Впервые с этим столкнулся и сильно удивился, разбираться времени еще не было. Может кто объяснит, что же произошло и как этого избежать в будущем?

Пасиба!


 
Prooksius ©   (2003-01-01 18:31) [1]

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


 
Anatoly Podgoretsky ©   (2003-01-01 18:48) [2]

Local Share = TRUE


 
TTCustomDelphiMaster ©   (2003-01-01 20:21) [3]


> Может кто объяснит, что же произошло


Информация сначала заносится в кэш. При нажатии на Reset этот кэш погиб со всеми записями.


 
Andreika   (2003-01-02 20:15) [4]

Народ, я пользовался стандартными компонентами TDatabase, TTable. БД - локальная. Причина улета данных ясна как божий день. Но я так и не нашел ту самую переключалку, которая отменяет/разрешает кэширование данных. Что нужно сделать, чтоб комп сразу сбрасывал данные на диск, а не копил их в каком-то буфере в ожидании финиша?


 
Prooksius ©   (2003-01-02 20:35) [5]

Посмотри пример
C:\Program Files\Borland\Delphi6\Demos\Db\Mastapp\


 
TTCustomDelphiMaster ©   (2003-01-02 20:43) [6]

Насколько я помню FlushBuffers сбрасывает кэш на диск. Выполняй его после Post.


 
Pat ©   (2003-01-02 21:25) [7]

вот нашел в faq"е:
http://delphi.mastak.ru/cgi-bin/faq.pl?look=1&id=988623315&n=14
Возникло несколько вопросов....
FlushBuffers только для Д3?
Post не подходит?


 
TTCustomDelphiMaster ©   (2003-01-02 21:35) [8]

FlushBuffers для TBDEDataSet. Post помещает данные в кэш.


 
vovkin   (2003-01-02 21:36) [9]

Ну тык выдь ... Paradox основан на работе с файлами очень жестко ( это не SQL сервер где все централизовано) и ессно, если буферы(а) файла не сбросить на диск, а тем более, когда машина обвисла бежнадежно, таки информация не сбросится на диск. Это раз, во вторых, проверь свою работу в транзакциях, мож где остается незакрытая транзякция? А Post таки опять работает только с кэшем, посему, после Post инфа попадает в буффер, а не физически в файл. Так скать, для ускорения работы


 
Andreika   (2003-01-03 12:11) [10]

Всем пасиба! Отдельное - TTCustomDelphiMaster-у.
FlushBuffers работает. У-р-р-а-а-а!!!


 
Andreika   (2003-01-03 12:26) [11]

Пардон, Prooksius-у также отдельное пасиба!



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

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

Наверх




Память: 0.49 MB
Время: 0.017 c
1-72269
Anatoly P
2003-01-11 19:37
2003.01.23
Дуга по трем точкам


8-72416
step[B.M.]
2002-10-07 11:53
2003.01.23
Надо писать звук со входа звуковой карты в mp3


1-72301
Gammon
2003-01-13 11:15
2003.01.23
Создание своих компонентов на основе RXLib


1-72320
Dor
2003-01-15 18:51
2003.01.23
У меня есть edit1 и edit2,и мне надо,чтою из тексты из edit1 и ed


1-72224
malkolinge
2003-01-13 16:32
2003.01.23
Регистрирую свои редакторы свойств и имею головную боль :)