Pode-se tentar esta rotina! Não é 1005 segura, mas nromalmente 
resolve o problema!!!

procedure TFmMain.ReindexaodeCadastros1Click(Sender: TObject);
begin

table1= tabela onde ficaram os dados temporários

with table1 do
   begin
   active:=false;
   databasename:='variavel';
   tabletype:=ttparadox;
   tablename:='tabelaCorrompida'; (Onde é reconhecida a tabela 
corrompida)
   with fielddefs do
      begin
      clear;
      ( Não se esquecer de escrever todos os campos na mesma ordem da 
tabela crrompida e seus esepctivos tipos, tamanhos)
      add('Campo1',ftinteger,0,false); /// se o campo for numero 
inteiro
      add('campo2',ftstring,(Tamanho em caracters ex:80),false); /// 
se o campo for string
      add('campo3',ftmemo,240,false);  /// se o campor for memo
      add('campo4',ftfloat,0,false); /// se o campo for flutuante
      end;
   with indexdefs do
      begin
      clear;
      add('','(campos primários na indexação separados por ;)',
[ixprimary,ixunique]);
      add('(nome da indexador)','(campos na indexação separados 
por ;)',[ixcaseinsensitive]);
      end;
   createtable;
   end;
dmdados.table1.open;
dmdados.tabelaCorrompida.open;
dmdados.tabelaCorrmpinda.first;
while tabelaCaorrompida.eof <> true do
   begin
   table1.append;
   table1campo1.value:=   tabelaCorrompidacampo1.value;
   table1campo2.value:=   tabelaCorrompidacampo2.value;
   table1campo3.value:=   tabelaCorrompidacampo3.value;
   table1campo4.value:=   tabelaCorrompidacampo4.value;
   table1.post;
   table1.Refresh;
   tabelaCorrompida.next;
   end;
table1.close;
tabelaCorrompida.close;
/// 2º passo - Onde a table1 será usada para habilitar valores para 
uma Nova Tabela com o mesmo nome da tabela corrompida
with TabelaCorrompida do
   begin
   active:=false;
   databasename:='variavel';
   tabletype:=ttparadox;
   tablename:='Tabela Corrompida';
   with fielddefs do
      begin
      clear;
      add('Campo1',ftinteger,0,false); /// se o campo for numero 
inteiro
      add('campo2',ftstring,(Tamanho em caracters ex:80),false); /// 
se o campo for string
      add('campo3',ftmemo,240,false);  /// se o campor for memo
      add('campo4',ftfloat,0,false); /// se o campo for flutuante
      end;
   with indexdefs do
      begin
      clear;
      add('','(campos primários na indexação separados por ;)',
[ixprimary,ixunique]);
      add('(nome da indexador)','(campos na indexação separados 
por ;)',[ixcaseinsensitive]);
      end;
   createtable;
   end;
tabelaCorrompida.open;
table1.open;
table1.first;
while table1.eof <> true do
   begin
   tabelaCorrompida.append;
   table1campo1.value:=   tabelaCorrompidacampo1.value;
   table1campo2.value:=   tabelaCorrompidacampo2.value;
   table1campo3.value:=   tabelaCorrompidacampo3.value;
   table1campo4.value:=   tabelaCorrompidacampo4.value;
   tabelaCorrompida.post;
   tabelaCorrompida.Refresh;
   table1.next;
   end;
table1.close;
tabelacorrompida.close;
end;

Sei que é um tremendo trabalho fazer esta rotina toda, mas se faz uma 
vez só e serve para futuros problemas de corrupção nas tabelas




--- Em [EMAIL PROTECTED], Sávio Cler <[EMAIL PROTECTED]> 
escreveu
> Tem de passar o TUtil.
> 
>   Sávio Cler
>   ICQ 142428832
>   WWW www.stc.eti.br
>   MSN [EMAIL PROTECTED]
>   Sto A. de Pádua - Rio de Janeiro
>   Contato Pessoal:   (22)9812-0656
> 
>               ~ ~
>             ( @ @ )
>   -------o0Oo-(_)-oO0o-------
>       Precisando de dicas?
>        www.deephi.rg3.net
>   ---------------------------
>     Mais de 30000 downloads
>   ---------ooO---Ooo---------
> ----- Original Message -----
> From: "Williams Diaz" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Thursday, December 09, 2004 9:02 PM
> Subject: Re: [delphi-br] Erro de corrupção na tabela paradox
> 
> 
> Eu já consertei tabelas com esse problema fazendo um sort nela e 
criando um
> novo arquivo. Elimine os índices e as chaves primarias primeiro.
> 
> abraços,
> 
> williams
> 
> *-------------------------------------------
> Williams Díaz
> [EMAIL PROTECTED]
> http://www.interban.com.br
> 
> ----- Original Message -----
> From: "adilsonjc" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Thursday, December 09, 2004 8:45 PM
> Subject: [delphi-br] Erro de corrupção na tabela paradox
> 
> 
> 
> 
> Tenho um tabela paradox que está dando erro de corrupção, consigo
> abrir a tabela, mas se tentar navegar até os últimos registros ele
> diz que o header está corrupto, alguém sabe alguma forma para
> recuperar os dados desta tabela ?
> 
> 
> 
> 
> 
> --
> <<<<< 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
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> --
> <<<<< 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]
> 
> 
> 
>       Yahoo! Grupos, um serviço oferecido por:
> 
> 
> 
> 
> 
> 
> 
> --------------------------------------------------------------------
--------
> ----
> Links do Yahoo! Grupos
> 
>   a.. Para visitar o site do seu grupo na web, acesse:
>   http://br.groups.yahoo.com/group/delphi-br/
> 
>   b.. Para sair deste grupo, envie um e-mail para:
>   [EMAIL PROTECTED]
> 
>   c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos 
do Serviço
> do Yahoo!.








-- 
<<<<< 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