[Microsoft][ODBC Driver Manager] Naam gegevensbron niet gevonden en geen standaardstuurprogramma opgegeven

Ik probeer voor het eerst een programma te openen op Windows XP Pro dat PostgreSQL 9 gebruikt. Ik krijg een foutmelding met de tekst:

Er is een probleem opgetreden bij het inloggen op of het maken van de
productie databank. Details: [Microsoft][ODBC Driver Manager]-gegevens
bronnaam niet gevonden en geen standaardstuurprogramma opgegeven

In mijn ODBC-manager heb ik een lijst met gebruikers-DSN’s en systeem-DSN’s. Ik heb geprobeerd een postgres odbc-stuurprogramma te installeren om te zien of dat zou helpen, maar dat lukte niet.

Er is een connect.dat-bestand in het programmabestand met de regel “OLE DB Provider = MSDASQL”. Als u dit item wijzigt, verandert de foutmelding die ik krijg in “Provider kan niet worden gevonden, is mogelijk niet correct geïnstalleerd”.

Ik weet niet welke providernaam ik moet invoegen om dit correct te laten werken. Ik heb uitgebreid onderzoek gedaan naar deze fout zonder resultaat. Eventuele suggesties worden zeer op prijs gesteld.


Antwoord 1, autoriteit 100%

  1. Met verwijzing naar de fout: [Microsoft][ODBC Driver Manager] Naam van gegevensbron niet gevonden en geen standaardstuurprogramma opgegeven.

    Die fout betekent dat de gegevensbronnaam (DSN) die u opgeeft in uw verbindingsconfiguratie niet wordt gevonden in het Windows-register.

    • Het is belangrijk dat het uitvoerbare en koppelingsformaat (ELF) van uw ODBC-stuurprogramma hetzelfde is als uw toepassing. Met andere woorden, u hebt een 32-bits stuurprogramma nodig voor een 32-bits toepassing of een 64-bits stuurprogramma voor een 64-bits toepassing.

      Als deze niet overeenkomen, is het mogelijk om een DSN te configureren voor een 32-bits stuurprogramma en wanneer u die DSN probeert te gebruiken in een 64-bits toepassing, wordt de DSN niet gevonden omdat het register DSN-informatie bevat op verschillende plaatsen, afhankelijk van ELF (32-bits versus 64-bits).

      Zorg ervoor dat u de juiste ODBC-beheerder gebruikt. Op 32-bits en 64-bits Windows bevindt het standaardhulpprogramma voor ODBC-beheerders zich in C:\Windows\System32\odbcad32.exe. Op een 64-bits Windows-computer is de standaard echter de 64-bits versie. Als u de 32-bits ODBC-beheerderstool op een 64-bits Windows-systeem moet gebruiken, moet u degene die u hier vindt uitvoeren: C:\Windows\SysWOW64\odbcad32.exe

      Waar ik zie dat dit mensen overstuur maakt, is wanneer een gebruiker de standaard 64-bits ODBC-beheerder gebruikt om een DSN te configureren; denken dat het voor een 32-bits DSN is. Wanneer de 32-bits toepassing vervolgens probeert verbinding te maken met die DSN, wordt “Gegevensbron niet gevonden…” weergegeven.

    • Het is ook belangrijk om ervoor te zorgen dat de spelling van de DSN overeenkomt met die van de geconfigureerde DSN in de ODBC-beheerder. Eén verkeerde letter is voldoende om een DSN niet overeen te laten komen.

      Hier is een artikel dat aanvullende details kan geven

      Het kan echter niet hetzelfde productmerk zijn dat u heeft; het is een algemeen probleem dat zich voordoet bij het gebruik van ODBC-gegevensbronnamen.

  2. Met betrekking tot het OLE DB-providergedeelte van uw vraag, lijkt het een soortgelijk probleem te zijn waarbij de toepassing de configuratie voor de opgegeven provider niet kan vinden.


Antwoord 2, autoriteit 82%

Krijg deze fout omdat ik de naam van de gegevensbron in de gebruikers-DSN had in plaats van de systeem-DSN


Antwoord 3, autoriteit 16%

Het probleem kan bijvoorbeeld van de naam van de driver zijn in plaats van DRIVER={MySQL ODBC 5.3 Driver}probeer DRIVER={MySQL ODBC 5.3 Unicode Driver}die u kunt zien de naam van de bestuurder van de administratietool


Antwoord 4, autoriteit 6%

als je IIS gebruikt, moet je het misschien proberen
“applicatiepools” –> “DefaultAppPool” –> “applicatie pools standaardwaarde”
–> “32-bit-applicatie-activ” –> stel false in


Antwoord 5, autoriteit 6%

In mijn geval werkte het in x86maar niet in x64.

Het is nogal belachelijk, maar in x64 moest de volgende wijziging worden toegevoegd voordat het zou werken:

x86 -> szDsn = "DRIVER={MICROSOFT ACCESS DRIVER (*.mdb)};
x64 -> szDsn = "DRIVER={MICROSOFT ACCESS DRIVER (*.mdb, *.accdb)};

Let op de toevoeging van *.accdb.


Antwoord 6, autoriteit 4%

Ik kreeg dit met gegevensgestuurde tests met:

Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)

Het probleem is dat de bovenstaande driver alleen 32 bit is. Ik had het bestand met Visual Studio-testinstellingen naar 64-bits omgezet om een toepassing met alleen 64-bits te testen.

Terugschakelen naar 32 bit in het bestand met testinstellingen loste het probleem op.

met behulp van een bestand met testinstellingen


Antwoord 7, autoriteit 4%

Controleer de exacte naam van het stuurprogramma in de ODBC-beheerderstool. Druk op Windows-toets + R en dan:

  • C:\Windows\System32\odbcad32.exeop 32-bits systemen
  • C:\Windows\SysWOW64\odbcad32.exeOP 64-BIT SYSTEMEN

In mijn geval had het Microsoft Access Driver (*.mdb, *.accdb)in plaats van Microsoft Access Driver (*.mdb).


Antwoord 8

Ik heb het bovenstaande geprobeerd, maar vond mijn probleem dat ik een | In de naam van de DSN (ik heb sultipled ODBC-connectoren – één voor elke dB – om ervoor te zorgen dat ik geen Keerwerkgegevens)

Ik heb de | vervangen (pijp) met een _ en alles werkt nu goed.

Ik probeerde SQL Server uit Alteryx te bellen.


Antwoord 9

Volgend de instructies hier http://help.limware.com/pages /viewPage.action?PageID=27099554 Ik moest de Microsoft Access Database Engine 2010 Redistributable Voordat ik het Excel-stuurprogramma had geïnstalleerd om de DSN-Minder-verbinding te gebruiken die ik van Perl wilde gebruiken.

Other episodes