Hallo zusammen,
ich habe ein VI geschrieben, um aus einer Access-Datenbank mithilfe einer ID-Nummer zu lesen. Dabei erscheint folgende Fehlermeldung:
NI_Database_API.lvlib
B Tools Open Connec (String).vi->Database_GetID_Test.vi<ERR>ADO Error: 0x800A0E7A
Exception occured in ADODB.Connection: Der Provider kann nicht gefunden werden. Möglicherweise ist er nicht richtig installiert worden.Help Path is C:\Windows\HELP\ADO270.CHM and context 1240655 in NI_Database_API.lvlib
B Tools Open Connec (String).vi->Database_GetID_Test.vi
Es scheint Probleme mit dem Provider zu geben? Ich glaube das könnte daran liegen, da ich hierbei mit unterschiedlichen Architekturen arbeite: Labview (32-Bit) und Access DB (64-Bit)
Wie schaffe ich es dennoch, aus der DB zu lesen?
(09.05.2017 10:03 )LabDevo_CLD schrieb: [ -> ]Es scheint Probleme mit dem Provider zu geben? Ich glaube das könnte daran liegen, da ich hierbei mit unterschiedlichen Architekturen arbeite: Labview (32-Bit) und Access DB (64-Bit)
Ja, das könnte das Problem sein.
(09.05.2017 10:03 )LabDevo_CLD schrieb: [ -> ]Wie schaffe ich es dennoch, aus der DB zu lesen?
Du brauchst eine 32bit-Version des Access ODBC Treibers.
Gruß, Jens
Hallo LabDevo_CLD,
Das Lese VI benötigt den Namen der Tabelle die gelesen werden soll.
Bei Dir sieht das so aus, als würdest Du den Namen der Datenbank übergeben.
Gruß
Freddy
(09.05.2017 10:03 )LabDevo_CLD schrieb: [ -> ]Hallo zusammen,
ich habe ein VI geschrieben, um aus einer Access-Datenbank mithilfe einer ID-Nummer zu lesen. Dabei erscheint folgende Fehlermeldung:
NI_Database_API.lvlibB Tools Open Connec (String).vi->Database_GetID_Test.vi<ERR>ADO Error: 0x800A0E7A
Exception occured in ADODB.Connection: Der Provider kann nicht gefunden werden. Möglicherweise ist er nicht richtig installiert worden.Help Path is C:\Windows\HELP\ADO270.CHM and context 1240655 in NI_Database_API.lvlibB Tools Open Connec (String).vi->Database_GetID_Test.vi
Es scheint Probleme mit dem Provider zu geben? Ich glaube das könnte daran liegen, da ich hierbei mit unterschiedlichen Architekturen arbeite: Labview (32-Bit) und Access DB (64-Bit)
Wie schaffe ich es dennoch, aus der DB zu lesen?
Das Problem ist wahrscheinlich dass Du den ODBC Manager aus der Systemsteuerung aufrufst. Dabei rufst Du die 64 Bit Version auf und die zeigt zwar sowohl 32 Bit als auch 64 Bit User Datensourcen an (aber nur 64 Bit System Datensourcen). Aber um eine Datensource von einer 32 Bit Applikation ansprechen zu können muss diese auch von der 32 Bit Version des ODBC Managers erzeugt werden (und muss natürlich ein 32 Bit Trieber für Deine Datenbank auf dem Computer installiert sein!!).
Dazu rufst Du den 32 Bit OCBC Manager in %windir%\SysWOW64\odbcad32.exe auf. Dann sollte es gehen.
Vielen Dank für die Antwort.
Aber wie rufe ich den 32 Bit OCBC Manager genau auf. Mache ich das dann über LV?
Du Konfigurierst unter Windows einen ODBC Treiber mit der Datenbank die Du verwenden willst.
Diese Konfiguration hat einen Namen.
Den setzt Du ein wie unten im Bild.
Gruß
Freddy
Okay das habe ich bereits verstanden.
Kann ich die oledb32.dll irgendwo runterladen? Ich habe diesen noch nicht.
Aber da ich bereits eine Datenbank unter der 64 Bit Version habe und ich ja aus dieser lesen möchte funktioniert das dann überhaupt wenn ich für meine UDL einen 32-Bit triber verwende?
Zitat:Kann ich die oledb32.dll irgendwo runterladen? Ich habe diesen noch nicht.
Das würde ich einfach mal googlen.
Wenn Du LabView mit 32Bit verwendest, dann benötigst Du einen ODBC Treiber 32Bit.
Gruß
Freddy
Nach langem suchen bin ich darauf gekommen, dass dies so nicht geht.
Ich kann keine 64 Bit Datenbank mit einem 32 Bit Treiber "betreiben":
https://answers.microsoft.com/en-us/offi...c30?auth=1
Gibt es noch eine andere Möglichkeit Werte aus dieser DB zu holen?
Habe schon geschaut über VBA Makros allerdings unterstützt LV nur Excel Makros und keine Access.
Oder wäre es möglich eine C Code zu implementieren?
Bin über jeden Tipp dankbar
.
Also ich versteh den Beitrag anders. Es sollte IMHO schon gehen, du brauchst bloß die korrete Bitness-Version beim Access Database Engine.
Jetzt musst du nur nach dem Passenden zu deiner Access-Version suchen.
Hier z.B. Acccess 2016:
https://www.microsoft.com/en-us/download...x?id=54920
Alternativen:
- 32bit-Version von Office bzw. Access installieren
- Muss es Access sein? Wie wäre es mit einem MS SQL Express Server!
Gruß, Jens