Artigo: 306269 - Última revisão: sexta-feira, 30 de Março de 2007 - Revisão: 3.7

PROBLEMA: Erro 80004005 "The Microsoft Jet Database Engine cannot open the file '(unknown)'"

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.
Expandir tudo | Reduzir tudo

Sintomas

Quando utiliza ADO (ActiveX Data Objects) ou ODBC para ligar a uma base de dados do Microsoft Access, poderá receber a seguinte mensagem de erro:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Microsoft Access 97 Driver] The Microsoft Jet database engine cannot open the file '(unknown)'. It is already opened exclusively by another user, or you need permission to view its data.

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

Causa

Existem diversas causas para esta mensagem de erro:
  • A conta que o IIS (Serviços de informações Internet - Internet Information Services) está a utilizar (geralmente IUSR) não tem as permissões adequadas do Windows NT para uma base de dados baseada em ficheiro ou para a pasta que contém o ficheiro.
  • O ficheiro e o nome da origem de dados estão marcados como exclusivos.
  • Outro processo ou utilizador tem a base de dados do Access aberta.
  • O erro pode ser causado por um problema de delegação. Verifique o método de autenticação (base ou NTLM), caso esteja a ser utilizada. Se a cadeia de ligação utilizar a convenção de nomenclatura universal (UNC, Universal Naming Convention), experimente utilizar a autenticação base ou um caminho absoluto, como C:\Mydata\Data.mdb. Este problema pode ocorrer mesmo se o UNC apontar para um recurso local do computador do IIS.
  • Este erro também poderá ocorrer quando aceder a uma base de dados local do Microsoft Access ligada a uma tabela que esteja numa base de dados do Access num servidor de rede.

Resolução

Os itens que se seguem correspondem à lista anterior de causas:
  • Verifique as permissões no ficheiro e na pasta. Certifique-se de que tem a capacidade de criar e/ou destruir quaisquer ficheiros temporários. Os ficheiros temporários são geralmente criados na mesma pasta que a base de dados, mas o ficheiro também pode ser criado noutras pastas, como a pasta WINNT. Para obter informações sobre como identificar a pasta que não tem as permissões correctas e sobre como configurar ficheiros temporários, clique no número do ficheiro que se segue para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
    253604  (http://support.microsoft.com/kb/253604/ ) Microsoft Access 97 database connectivity fails in Active Server Pages
    Se utilizar um caminho de rede para a base de dados (UNC ou unidade mapeada), verifique as permissões da partilha, do ficheiro e da pasta.
  • Certifique-se de que o ficheiro e o nome da origem de dados (DNS, data source name) não estão marcados como exclusivos.
  • O "outro utilizador" pode ser o Microsoft Visual InterDev. Feche todos os projectos do Visual InterDev que contenham uma ligação de dados à base de dados.
  • Simplifique. Utilize um DNS de sistema que utilize uma letra de unidade local. Se for necessário, mova a base de dados para a unidade local para testar.
  • Siga as instruções do seguinte artigo para contornar este problema:
    189408  (http://support.microsoft.com/kb/189408/ ) FIX: ASP fails to access network files under IIS 4.0 and IIS 5.0

Referências

Para procurar falhas no acesso a ficheiros, utilize o monitor de ficheiros do Windows NT. Para transferir o monitor de ficheiros, consulte o seguinte Web site da Sysinternals:
http://www.microsoft.com/technet/sysinternals/default.mspx (http://www.microsoft.com/technet/sysinternals/default.mspx)
A Microsoft fornece informações de contacto de outros fabricantes para o ajudar na obtenção de suporte técnico. Estas informações de contacto poderão ser alteradas sem aviso prévio. A Microsoft não garante o rigor das informações sobre o contacto destes fabricantes.

A informação contida neste artigo aplica-se a:
  • Microsoft Data Access Components 1.5
  • Microsoft Data Access Components 2.0
  • Microsoft Data Access Components 2.1
  • Microsoft Data Access Components 2.1 Service Pack 1
  • Microsoft Data Access Components 2.1 Service Pack 2
  • Microsoft Data Access Components 2.5
  • Microsoft Data Access Components 2.5 Service Pack 1
  • Microsoft Data Access Components 2.5 Service Pack 2
  • Microsoft Data Access Components 2.6
  • Microsoft Active Server Pages 4.0
Palavras-chave: 
kbdatabase kbprb KB306269