Reindexar Tabelas

Siga os passos a seguir:

Implementation

uses blablabla;

1 - Crie duas variaveis do tipo boolean (flagbreak e flagdoing)

var
FlagBreak, FlagDoing : Boolean;

2 - Copie a procedure REINDEX para seu projeto

procedure Reindex(DataBase : TDataBase; Table : TTable; Edit : 
TLabel; ProgressBar : TGauge);
var
List: TStrings;
I : Integer;
begin
try
Database.Connected := True;
except
raise;
exit;
end;
List := TStringList.Create;
Session.GetTableNames(Database.AliasName, '', True, False, List);
for i := 0 to List.Count - 1 do begin
if FlagBreak = True then Break;
Edit.Caption := List[i];
ProgressBar.Progress := Trunc(100 * i / List.Count);
Application.ProcessMessages;
Table.Close;
Table.TableName := List[i];
try
Table.Open;
Check(DbiRegenIndexes(Table.Handle));
except
raise;
end;
end;
List.Free;
Database.Connected := False;
ProgressBar.Progress := 0;
Edit.Caption := '';
end;

Acesse http:www.tcsystems.com.br e veja na íntegra todos os 
passos.Vc encontra essa dica e muito mais,confira.




-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a