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

Вниз

Пересоздать повреждённые индексы (Paradox+TTable)   Найти похожие ветки 

 
IGray   (2005-11-09 07:52) [0]

Есть TTable и соответствующая таблица с повреждёнными (или отсутствующими индексами). Очень нужно пересоздать как-нибудь индексы, например на основе IndexDefs из Table.

dbiRegenIndexes не катит, так как требует открытую таблицу вроде, а таблица открываться не хочет, так как индексы повреждены.. облом-с..

Помогите плииз!


 
DimonS ©   (2005-11-09 08:12) [1]

Если вручную - то Database Desctop рулит.

А программно я не смог восстановить ни разу, хотя перепробовал не один способ. По крайней мере у парадокса.


 
mr.il ©   (2005-11-09 09:23) [2]

Лучше всего (ИМХО) после разрушения индекса стирать все индексные файлы таблицы и восстанавливать индексы. Для этого создай ини с описаниями индексов, и заполняй из него процедуру типа:

     with Table1 do begin

           AddIndex(_IndexName, _IndexFields, _IndexOptions);
     end;


 
IGray   (2005-11-09 14:38) [3]

А зачем в Ini хранить, если нужная инфа есть внутри Table в IndexDefs?
Задача вроде типовая - неужели самому писать придётся.. не охота велосипед изобретать и время тратить... :-((


 
mr.il ©   (2005-11-09 15:14) [4]

Дык зато из ини на новом месте пустую базу можно поднять. И вообще не привязываться к задаче. У каждой задачи-свой ини, а реиндексер один на всех.


 
DimDim ©   (2005-11-12 17:19) [5]

В самом Paradox есть замечательная команда "Table Repair..." в меню "Tools"



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

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

Наверх




Память: 0.47 MB
Время: 0.069 c
2-1133960986
Plotnick
2005-12-07 16:09
2006.01.01
Как сделать приличную тень под окном


2-1134645406
dapher
2005-12-15 14:16
2006.01.01
Конструкторы


2-1134712505
dabreezy
2005-12-16 08:55
2006.01.01
Stack overflow


2-1134651379
fast2
2005-12-15 15:56
2006.01.01
Как можна сделать так, чтоб нельзя было бы редактировать Edit


2-1134829134
kotbazilio
2005-12-17 17:18
2006.01.01
Разника между датами