Como compactar uma base de dados do Microsoft Access utilizando o Visual Basic .NET

Traduções de Artigos Traduções de Artigos
Artigo: 306287 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

Sumário

Nem ActiveX Data Objects (ADO) nem ADO.NET fornecem os meios para compactar ou reparar bases de dados do Microsoft Access. No entanto, pode efectuar esta tarefa, utilizando o Microsoft Jet OLE DB Provider e Replication Objects (JRO) que foi introduzida com o Microsoft Data Access Components (MDAC) versão 2.1. ADO.NET permite a utilização de bibliotecas de objectos baseada em COM a camada de interoperabilidade .

Este artigo demonstra como compactar uma base de dados do Access utilizando o Visual Basic. NET.


Requisitos

  • Microsoft Visual Basic .NET
  • Microsoft Jet and Replication Objects 2.1, 2.5 e 2.6 Library

Passos para criar o exemplo

  1. Abra uma nova aplicação de consola Visual Basic. NET.
  2. Na janela Solution Explorer , clique com o botão direito do rato no nó de referências e seleccione Adicionar referência .
  3. Na caixa de diálogo Adicionar referência do , clique no separador COM e, em seguida, seleccione do Microsoft Jet e 2 objectos de replicação. x biblioteca . Clique em Seleccionar para o adicionar Componentes seleccionados . Clique em OK .

    Nota Neste passo, x é um marcador de posição para o número da versão actual do componente do Microsoft Jet e biblioteca de objectos de replicação.
  4. Será apresentado um aviso se não existir nenhum wrapper encontrado para a biblioteca seleccionada. Clique em Sim para gerar um wrapper. Microsoft ActiveX Data Objects Library (ADODB) e JRO referências serão adicionadas o projecto referências .
  5. Na janela Solution Explorer, clique com o botão direito do rato Module1.vb e clique em Ver código .
  6. Elimine todo o código da janela de código.
  7. Copie o seguinte código e cole-o na janela de código:
    Module Module1
    
        Sub Main()
    
            Dim jro As JRO.JetEngine
    
            jro = New JRO.JetEngine()
    
            jro.CompactDatabase("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\nwind.mdb", _
            "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\NewNwind.mdb;Jet OLEDB:Engine Type=5")
    
            MsgBox("Finished Compacting Database!")
        End Sub
    
    End Module
    					
  8. Altere o caminho para os ficheiros .mdb origem e destino conforme apropriado. Prima F5 para compilar e executar o projecto.

    A base de dados compactada irá estar no formato Access 2000 (Jet 4.0). Para um formato diferente do Jet, consulte "Referências".

Armadilhas

Para compactar uma base de dados, o motor de base de dados Jet requer acesso exclusivo ao ficheiro de base de dados. A tentativa compactar um ficheiro de base de dados que está actualmente em utilização resultará numa excepção. Esta excepção pode ser detectada uma estrutura tente... Apanha a utilizar.

Referências

Para obter mais detalhes sobre o .NET Framework e a camada de interoperabilidade, consulte:
Exposição de componentes do COM para o .NET Framework
http://msdn2.microsoft.com/en-us/library/z6tx9dw3(vs.71).aspx
Para obter mais informações sobre como utilizar ADO e o JRO para compactar bases de dados do Access, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
230501Como Compactar base de dados do Microsoft Access através de ADO

Propriedades

Artigo: 306287 - Última revisão: 16 de maio de 2007 - Revisão: 2.3
A informação contida neste artigo aplica-se a:
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
Palavras-chave: 
kbmt kbhowtomaster KB306287 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 306287

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com