Советы по Delphi


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


... вы все делаете правильно. 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;

[001331]



Содержание раздела