скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Пересборка индексов с помощью TBatchMove



Два компа по сети связались, один - другому:
- Мой хозяин вчера на одном сайте таких девочек разглядывал - ну C:\ твою формать!
- Потише ты, без ненормативной лексики, у меня тут дети в "Тетрис" играют.

... вы все делаете правильно. BatchMove не может пересобирать индексы. Тем не менее, следующая процедура все же поможет вам сделать это (создать индексы заново). Задайте ей необходимые параметры (.DBF. Name, исходная и целевая таблица, Source и Target) и попробуйте ее в деле!


procedure TForm1.FormCreate(Sender: TObject);
var
  x: integer  ;
begin
  BatchMove1.Execute ;
  Source.Open ;
  Target.Exclusive := True ;
  Target.Open ;
  Source.IndexDefs.Update ;
  for x := 0 to Source.IndexDefs.Count - 1 do
    Target.AddIndex(Source.IndexDefs[x].Name,
  Source.IndexDefs[x].Fields,
  Source.IndexDefs[x].Options) ;
  Source.Close ;
  Target.Close ;
end;






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook