Access chyba přístupu k db přes OLEDB   otázka

C#, Databáze

Dobrý den,

aplikace (v C#) má komunikovat přes OLEDB s databází Access. Po přeinstalování počítače nastal problém s komunikací. Nastává tato nespecifikovaná chyba:

System.Data.OleDb.OleDbException (0x80040E4D): K dispozici není žádná chybová zpráva, kód výsledku: DB_SEC_E_AUTH_FAILED(0x80040E4D).
   v System.Data.OleDb.OleDbConnectionInternal..ctor(OleDbConnectionString constr, OleDbConnection connection)
   v System.Data.OleDb.OleDbConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject)
   v System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup)
   v System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
   v System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
   v System.Data.OleDb.OleDbConnection.Open()

nedaří se mi přijít na příčinu. Dělal jsem nějaký test a spojení s databází je v pořádku. Na mém počítači vše funguje stále bez problémů a před reinstalací počítače zákazníka u něj také.

Předem moc děkuji za případný typ

nahlásit spamnahlásit spam 0 odpovědětodpovědět

To že není k dispozici chybová zpráva, neznamená že chyba je nespecifikovaná.

Chyba DB_SEC_E_AUTH_FAILED znamená že se nedá přihlásit do databáze (problém authentizace), zkontrolujte tedy následující:

- Zda je v Connection stringu správně zadán User Id a hlavně Password. (Pozor také na to, že pro prázdný Password je nutno zadat Password="".

-Zkontrolujte cestu na soubor databáze

-Zkontrolujte, že aplikace má práva k uvedenému souboru databáze.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Díky za rychlé info.

Vzhledem k tomu, že db soubor není chráněn heslem, nepoužíval jsem tento parametr. Vyzkouším přidat a dám vědět.

Cesta je OK. Práva patrně také (db soubor je v Dokumentech).

Děkuji

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Tak problém stále přetrvává.

Connection string jsem upravil dle http://www.connectionstrings.com/access/

Pro ACE OLEDB 12.0 a stále nic.

Pokud by byl nějaký nápad kde hledat problém, předem děkuji.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

P.S: dělal jsem i ověření jestli je na PC instalován ACE OLEDB 12.0

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Ještě u Access Database Engine OLEDB býval problém s 32-bit vs. 64-bit verzí. Musíte mít nainstalovanou tu verzí podle procesu, kde OLEDB využíváte tj. pokud vaše aplikace běží např. x64 (v .NET i nastavení AllCPU na x64 stroji), tak musíte mít nainslalovanou x64 verzi Microsoft Access Database Engine. A pokud je na počítači nainstalován i office, tak musí být také v x64 verzi.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Moc díky za typy.

Bohužel vše je 32bit a OS XP.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback