PRB: "Microsoft Jet Veritabanı Altyapısı '(bilinmeyen)' dosyasını açamıyor" hatası 80004005

Belirtiler

Bir Microsoft Access veritabanına bağlanmak için ActiveX Veri Nesneleri (ADO) veya ODBC kullandığınızda aşağıdaki hata iletisini alabilirsiniz:

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.

Neden

Bu hata iletisinin birkaç nedeni vardır:

  • Microsoft Internet Information Server'ın (IIS) kullandığı hesap (genellikle IUSR'dir) dosya tabanlı bir veritabanı veya dosyayı içeren klasör için doğru Windows NT izinlerine sahip değildir.
  • Dosya ve veri kaynağı adı Özel Kullanım olarak işaretlenir.
  • Başka bir işlem veya kullanıcının Access veritabanı açık.
  • Hatanın nedeni temsilci seçme sorunu olabilir. Varsa kimlik doğrulama yöntemini (Temel ve NTLM karşılaştırması) denetleyin. bağlantı dizesi Evrensel Adlandırma Kuralı 'nı (UNC) kullanıyorsa, Temel kimlik doğrulamasını veya C:\Mydata\Data.mdb gibi mutlak bir yolu kullanmayı deneyin. UNC, IIS bilgisayarına yerel olan bir kaynağı işaret etmese bile bu sorun oluşabilir.
  • Bu hata, tablonun bir ağ sunucusundaki Access veritabanında yer aldığı bir tabloya bağlı yerel bir Microsoft Access veritabanına eriştiğinizde de oluşabilir.

Çözüm

Aşağıdaki öğeler önceki nedenler listesine karşılık gelir:

  • Dosya ve klasör üzerindeki izinleri denetleyin. Geçici dosyaları oluşturma ve/veya yok etme yeteneğine sahip olduğunuzdan emin olun. Geçici dosyalar genellikle veritabanıyla aynı klasörde oluşturulur, ancak dosya WINNT klasörü gibi diğer klasörlerde de oluşturulabilir.

    Veritabanının ağ yolunu (UNC veya eşlenmiş sürücü) kullanıyorsanız paylaşım, dosya ve klasör izinlerini denetleyin.

  • Dosyanın ve veri kaynağı adının (DSN) Özel Kullanım olarak işaretlenmediğini doğrulayın.

  • "Diğer kullanıcı" Microsoft Visual InterDev olabilir. Veritabanına veri bağlantısı içeren tüm Visual InterDev projelerini kapatın.

  • Basitleştirmek. Yerel sürücü harfi kullanan bir Sistem DSN'si kullanın. Gerekirse, veritabanını test etmek için yerel sürücüye taşıyın.

Başvurular

Dosya erişim hatalarını denetlemek için Windows NT Dosya İzleyicisi'ni kullanın. Dosya İzleyicisi'ni indirmek için bkz. Windows Sysinternals.