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

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

Индексация БД [D6, Paradox]


XAPAKTEP ©   (2003-01-08 14:46:00) 

Как мне проиндексировать (обновить существующие первичные и вторичные индексы) несколько связанных таблиц в моей проге?
Чтобы какбы после сбоев все индексы м/б обновить...
Таблицы в Paradox.


Verg   (2003-01-08 15:07:00) [1]

Есть такая функция в BDE:
function DbiRegenIndexes ( { Regenerate all indexes }
hCursor : hDBICur { Cursor }
): DBIResult stdcall;

Правда она иногда не помогает.
Я для надеги делал так:
Нужно иметь чистую, "нетронутую" копию таблицы (образцовя таблица).
Стирал у рабочей таблицы все файлы индексов
"*.px";
"*.x*";
"*.y*";

Азатем пользуясь информацией об индексах в образцовой таблице добавлял все индексы в рабочей:

for I:=0 to SafeTable.IndexDefs.Count-1 do
begin
Id:=SafeTable.IndexDefs[I];
RepTable.AddIndex(Id.Name, Id.Fields, Id.Options, Id.DescFields);
end;



Наверх

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