PRB: Chyba 80004005 Databázový stroj Microsoft Jet nemůže otevřít soubor (neznámý)

Příznaky

Pokud používáte objekty ActiveX Data Objects (ADO) nebo ODBC pro připojení k databázi aplikace Microsoft Access, může se zobrazit následující chybová zpráva:

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.

Příčina

Tato chybová zpráva má několik příčin:

  • Účet, který používá microsoft Internet Information Server (IIS) (což je obvykle IUSR), nemá správná systém Windows NT oprávnění pro souborovou databázi nebo pro složku, která obsahuje soubor.
  • Soubor a název zdroje dat jsou označeny jako výhradní.
  • Databáze Accessu je otevřená jiným procesem nebo uživatelem.
  • Příčinou chyby může být problém s delegováním. Zkontrolujte metodu ověřování (Základní versus NTLM), pokud existuje. Pokud připojovací řetězec používá unc (Universal Naming Convention), zkuste použít základní ověřování nebo absolutní cestu, například C:\Mydata\Data.mdb. K tomuto problému může dojít i v případě, že UNC odkazuje na prostředek, který je místní pro počítač služby IIS.
  • K této chybě může dojít také při přístupu k místní databázi aplikace Microsoft Access, která je propojena s tabulkou, ve které je tabulka v accessové databázi na síťovém serveru.

Řešení

Následující položky odpovídají předchozímu seznamu příčin:

  • Zkontrolujte oprávnění k souboru a složce. Ujistěte se, že máte možnost vytvářet a/nebo ničit všechny dočasné soubory. Dočasné soubory se obvykle vytvářejí ve stejné složce jako databáze, ale soubor může být vytvořen také v jiných složkách, jako je složka WINNT.

    Pokud používáte síťovou cestu k databázi (UNC nebo mapovaná jednotka), zkontrolujte oprávnění ke sdílené složce, souboru a složce.

  • Ověřte, že soubor a název zdroje dat (DSN) nejsou označené jako výhradní.

  • "Jiným uživatelem" může být Microsoft Visual InterDev. Zavřete všechny projekty Visual InterDev, které obsahují datové připojení k databázi.

  • Zjednodušit. Použijte systémový název DSN, který používá písmeno místní jednotky. V případě potřeby přesuňte databázi na místní jednotku, abyste ji mohli otestovat.

Odkazy

Pokud chcete zkontrolovat selhání přístupu k souborům, použijte systém Windows NT Sledování souborů. Pokud si chcete stáhnout sledování souborů, přečtěte si téma Windows Sysinternals.