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

Вниз

Востановление индексных файлов в Paradox   Найти похожие ветки 

 
D@Nger ©   (2006-08-14 08:56) [0]

Здравствуйте мастера! У меня TTable и парадоксовская таблица. После сбоя, полетели индексные файлы (Index is out of date). Пытаюсь сделать процедурку для восстановления индексных файлов.
  Делаю так:
Check(DbiRegenIndex(log_Tbl.DBHandle, nil, PChar(log_tbl.TableName), nil,  PChar(""), PCHar(""), 0));

Но не знаю что указывать в выделенном участке процедуры. В первом PChar, наверно, имя восстанавливаемого индекса, а во втором PChar не знаю что ставить, а в третьем, наверно номер индекса.
  В общем ничего не получается. Битые индексы удалил. остался один *.db. Мне надо что бы индексные файлы создались.

Пробовал и вторым способом из RXLib процедурой ReindexTable и RestoreIndex. Тоже ничего не выходит. Подскажите как мне переиндексировать таблицу.

Спасибо!.


 
Anatoly Podgoretsky ©   (2006-08-14 10:15) [1]

Почему бы не получить этот ответ из первоисточника, то есть из родной справки?
pszIndexName, pszIndexTagName, iIndexId);
Каждый из параметров прекрасно описан, есть примеры использования на двух языках.


 
D@Nger ©   (2006-08-14 11:09) [2]

У меня возникли вопросы:
1)А процедура Check восстанавливает индексы, т.е. я двигаюсь в нужном направлении ?
2) Процедуру Check нужно вызывать для каждого индекса отдельно?
3) В каком модуле сидит процедура Check, в справке найти не получается ?


 
Anatoly Podgoretsky ©   (2006-08-14 11:20) [3]

Процедура Check имеет косвенное отношения к базам. Подробности в справке.


 
D@Nger ©   (2006-08-14 13:34) [4]

Пытаюсь востановить индексы следующим образом:

   Check(DbiRegenIndexes(log_tbl.Handle));


Выходит ошибка, мол не правильный хендл (Invalid handle to the function). В справке ясно указано, что в качестве параметра указывается хендл таблицы.

Из-за чего это может быть ?


 
Desdechado ©   (2006-08-14 13:59) [5]

Check - это просто проверка корректности выполнения БДЕ его внутренней операции.

> Invalid handle to the function). В справке ясно указано, что в
> качестве параметра указывается хендл таблицы.
?


 
D@Nger ©   (2006-08-14 14:24) [6]

В общем, не получается у меня нифига. Придется наверно просто удалять индексы и создавать их заново. Не хотелось конечно делать по тупому, но другого варианта пока не вижу.


 
Anatoly Podgoretsky ©   (2006-08-14 15:03) [7]

Не каждому дано работать с АПИ, даже если есть подробные, рабочие примеры на Дельфи.



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

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

Наверх




Память: 0.48 MB
Время: 0.044 c
3-1155885560
Valery
2006-08-18 11:19
2006.10.15
Список в DBLoocupCombobox


2-1159690837
vain
2006-10-01 12:20
2006.10.15
PNG


1-1157698439
Grid
2006-09-08 10:53
2006.10.15
dbgrid


3-1155563743
Patrick
2006-08-14 17:55
2006.10.15
Database Links в Oracle


2-1159245101
Dima K
2006-09-26 08:31
2006.10.15
CheckBox в ячейке DBGrid