Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Повреждение индексов в таблицах Paradox. [D5, Paradox]


pusrg ©   (2002-03-20 18:01:00) 

Добрый день, уважаемые мастера!
Хотелось бы узнать есть ли какие-то общепринятые методы противодействия против постоянного повреждения индексов в таблицах Парадокс?
У меня есть заказчик у которого на парадоксовской базе постоянно портятся индексы с периодичностью 3-6 месяцев. (Повторялось уже 2 раза). Конечно не проблема заново создать эти индексы в Database Desctope, но ради этого каждый раз ездить к клиентам просто не хватит сил...

Большая просьба, не писать предложения сменить СУБД (сейчас я уже использую ИБ, но эта задача должна остаться в Парадоксе).
Буду благодарен, за любые ответы.


Anatoly Podgoretsky   (2002-03-21 00:14:00) [1]

pusrg © (20.03.02 19:01)
Индекс может быть так порушен, что ошибка не обнаруживается, добавь пункт в меню


pusrg   (2002-03-20 19:24:00) [2]

To sniknik
Спасибо за помощь!


sniknik   (2002-03-20 19:19:00) [3]

Ну можно в начале программы открыть все талици
try
Open;
except
а здесь отловить ошибку от индекса и переинтексировать.
on E: EDataBaseError ...
end;
номер ошибки не скажу не знаю. может и по другому можно.


pusrg   (2002-03-20 19:01:00) [4]

To sniknik
А есть ли функции в модуле БДЕ позволяющие определить что индекс разрушен? Или стоит тогда поставить обработчик исключений на момент первоначального открытия таблиц?


sniknik   (2002-03-20 18:51:00) [5]

После того как индексы порушились. До этого не имеет смысла. А предотвратить это невозможно в силу непредвиденности обстоятельств обрушения (питание вырубили, программу прервали, антивирус постарался, ктото запись на диск перехватил ... и т.д.).


pusrg   (2002-03-20 18:45:00) [6]

To sniknik
Спасибо за Ваш ответ.
Когда лучше использовать эту функцию: при закрытии программы или после обновления данных в таблице?


sniknik   (2002-03-20 18:34:00) [7]

Вставь куданибудь в програму "переиндексация" - Check(DbiRegenIndexes(Table.Handle));


Наверх

Титульная страница Поиск, карта сайта Написать письмо