Форум: "Базы";
Текущий архив: 2003.01.23;
Скачать: [xml.tar.bz2];
ВнизПотеря данных Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.009 c