Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Compactar Banco de Dados Access


Pirambu!

Pergunta

Preciso criar uma rotina para compactar um banco de Dados do Access.

Tenho um banco de dados Access que tenho que atualizar 4 tabelas toda semana(pega informações de outro tipo de banco para o banco do Access), só que quando faço a primeira atualização o banco fica com x MB quando vou fazer a segunda atualização o banco fica 2x MB (Mesmo que tenha a mesma quantidade de registros), detalhe a cada atualização é é limpa as tabelas então era pra ficar sempre com o mesmo pesso x MB

Alguém sabe como posso criar uma rotina no delphi para ficar compactando o banco de dados antes de cada atualização?

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

pronto conseguir resolver assim

Criei essa função:

function compacta_ADO (const Banco: WideString) : boolean;
 var
 JE : TJetEngine; //Jet Engine
 Temp : WideString; //TEMP database
 Conexao : WideString; //Connection string
 i : integer;
 const
 Provider = 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=';
 begin
  Temp := ExtractFileDir(banco) +
 'TEMP' +
 ExtractFileName(banco);
 Conexao := Provider + temp;
 if FileExists(Temp) then
 DeleteFile(Temp);
 JE:= TJetEngine.Create(Application);
 try
 try
 JE.CompactDatabase(Provider + Banco, Conexao);
 DeleteFile(Banco);
 RenameFile(Temp, Banco);
 except
 on E:Exception do
 ShowMessage(E.Message);
 end;
 finally
 JE.FreeOnRelease;
 for i:= 15 to 100 do
 begin
 sleep(10);
 end;
 Result:=True;
 end;
 end;
Acionei um JetEngine da paleta ACTIVEX para Chamar a Função:
Compacta_ado('c:\banco.mdb');

O Banco de dados deve estar fechado

Valeu, até a próxima.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...