PROBLEMA: Erro "Unrecognized Database Format" quando actualiza para o Access 2000 ou o 2002

Traduções de Artigos Traduções de Artigos
Artigo: 238401 - Ver produtos para os quais este artigo se aplica.
Este artigo foi publicado anteriormente em PT238401
Expandir tudo | Reduzir tudo

Sintomas

Se tentar obter acesso a uma base de dados do Access 2000 ou do Access 2002, poderá receber um dos seguintes erros no programa Visual Basic.

Se estiver a utilizar ActiveX Data Objects (ADO) da Microsoft (ou o controlo de dados ADO), receberá a seguinte mensagem de erro:
Run-time error -2147467259 Unrecognized Database Format XXX
Se estiver a utilizar Data Access Objects (DAO) (ou o controlo de dados genérico de DAO), receberá a seguinte mensagem de erro:
Run-time error 3343 Unrecognized Database Format XXX

Causa

O Access 2000 e o Access 2002 utilizam o motor Jet 4.0, que cria ficheiros de base de dados com o formato do Jet 4.0. Os componentes do Jet 3.5 não reconhecem tal formato.
  • Se estiver a utilizar ADO, receberá o erro -2147467259 quando tentar ligar à base de dados do Access 2000 ou 2002 através do fornecedor Microsoft.Jet.OLEDB.3.51.
  • Se estiver a utilizar DAO, receberá o erro 3343 quando utilizar a biblioteca Microsoft DAO 3.51 Object Library.
  • O controlo de dados genérico de DAO não funciona com bases de dados do Access 2000 ou 2002 e gera sempre o erro 3343, a não ser que seja utilizado conforme as instruções da secção "Resolução" deste artigo. Isto ocorre porque este controlo é baseado no Jet 3.51 e só reconhece formatos de base de dados do Jet 3.51 (ou anteriores).

Resolução

Este artigo poderá conter hiperligações para conteúdo em inglês (ainda não traduzido).

Para resolver este problema, utilize um dos seguintes métodos:
  • Instale o Visual Studio Service Pack 4 ou posterior. (Se estiver a utilizar o controlo de dados, altere a respectiva propriedade Connect para Access 2000.)
  • Para ADO (ou o controlo de dados de ADO), utilize o fornecedor Microsoft.Jet.OLEDB.4.0.
  • Para DAO, adicione uma referência à biblioteca Microsoft DAO 3.6 Object Library.
  • Se utilizar o controlo de dados genérico, terá de abrir um conjunto de registos do DAO 3.6 e atribuí-lo para ser a origem do controlo de dados, da seguinte forma:
    Option Explicit
    Private daoDB36 As Database
    Private rs As DAO.Recordset
    Dim sPath As String
    
    Private Sub Form_Load()
    sPath = _
    "C:\Programas\Microsoft Office\Office\Samples\Adamastor.mdb"
    Set daoDB36 = DBEngine(0).OpenDatabase(sPath)
    Set rs = daoDB36.OpenRecordset("Clientes")
    Set Data1.Recordset = rs
    End Sub
    					
  • Este problema foi resolvido pelo Visual Basic Service Pack 4. Foi adicionado um novo valor (Access 2000) para a propriedade Connect, que permitirá ao controlo de dados de DAO abrir bases de dados do Access 2000.

Ponto Da Situação

Este problema foi corrigido pela primeira vez no Visual Studio 6.0 Service Pack 4.Para obter informações adicionais sobre Service Packs do Visual Studio, clique nos números de artigo que se seguem para visualizar os artigos na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
194022 Visual Studio 6.0 Service Packs, What, Where, Why

194295 HOWTO: Tell That a Visual Studio Service Pack Is Installed
Para transferir o Service Pack mais recente do Visual Studio, visite o seguinte Web site da Microsoft:
http://msdn.microsoft.com/vstudio/downloads/updates.asp

Referências

Para obter mais informações sobre o Jet 4.0, consulte a documentação do Access 2000.

Para obter mais informações sobre ADO e DAO, consulte a documentação do Visual Basic.

Para obter mais informações, efectue uma consulta relativamente a "Unrecognized Database Format" na MSDN Library, fornecida com o Visual Basic.

Propriedades

Artigo: 238401 - Última revisão: 22 de dezembro de 2005 - Revisão: 3.0
A informação contida neste artigo aplica-se a:
  • Microsoft Visual Basic 5.0 Professional Edition
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Visual Basic 5.0 Enterprise Edition
  • Microsoft Visual Basic 6.0 Enterprise Edition
  • Microsoft Access 2000 Standard Edition
  • Microsoft Access 2002 Standard Edition
  • Microsoft Data Access Components 2.5
  • Microsoft Data Access Components 2.6
Palavras-chave: 
kbtophit kbjet kbprb kbctrl kbpubtypekc kbmsccsearch KB238401

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