O acesso cria novo arquivo toda vez que compacto e reparo
-
19-09-2019 - |
Pergunta
Nem sempre faz isso, mas desde que divida meu banco de dados e fiz o front-end um arquivo accde, sempre que tentar compactar e reparar um arquivo, um novo arquivo chamado "Database 1" é gerado e meu arquivo original O tamanho não muda.
Isso é normal?
Meu ACCDB tem aproximadamente 20 MB e meu accde está pouco mais de 1 m após ser usado pela primeira vez. Antes de abrir, o accde tinha apenas 600k (tenho muitas formas e consultas e armazenam regularmente anexos em PDF.
Solução
O novo arquivo é porque o processo de compacto e reparo não terminou, por isso não pode excluir seu original e renomear o arquivo compactado. Isso pode ser porque não tem acesso exclusivo. Certifique -se de que todos estejam fora do sistema antes de compactar e reparar. Verifique também se você tem permissões completas para a pasta.
Outras dicas
Depende de como você faz isso.
Ao usar a biblioteca de objetos de replicação de jato (JRO), o método JRO.JetEngine.CompactDatabase
é definido como
Sub CompactDatabase(SourceConnection As String, Destconnection As String)
Se você fornecer a mesma string de conexão para ambos os argumentos, recebe um erro, "o banco de dados já existe".
Portanto, ao usar o JRO Sim, é normal que um novo arquivo seja criado ao compactar.
Em alguns casos, pode ser assim, estou tendo o mesmo problema. No meu caso, tem a ver com a rede de rede que está ligada.
Minha solução alternativa é trazê -la para o meu c: e fazê -lo lá, depois movo de volta para a unidade de rede quando o compacto e o reparo forem concluídos.