73234
Goto Top

Access Datenbankanbindung mittels ODBC 32-64 bit

Moin @all,

wo stehe ich auf dem Schlauch?

Alt iO:
- Win7 64 bit
- 32bit Anwendung, die AccesDB bearbeitet
- Office 2007 32 bit, hier die Acces Datei erstellt
- Zugriff auf Acces Datei iO.

Neu mit Fehler:
- Win10 64 bit
- 32bit Anwendung, die AccesDB bearbeitet (wie oben)
- Office 2016 64 bit
- Zugriff auf Acces Datei über die Anwendung mit Fehler folgender Art:

Fehlerfenster:
[Microsoft][ODBC Driver Manager] Der Datenquellenname
wurde nicht gefunden, und es wurde kein Standardtreiber
angegeben.

Vielleicht kann mir jemand kurz aufzeigen, wie ich diese Anwendung wieder sauber
auf die AccessDatei zugreifen lassen kann?

In der Anwendung ist der Ort der Access-Datei fest hinterlegt.

Auch mit dem hinterlegen einer DSN-Datei bekomme ich die Fehlermeldung.

Vielen Dank für die Hilfe, Minion

Content-ID: 563540

Url: https://administrator.de/forum/access-datenbankanbindung-mittels-odbc-32-64-bit-563540.html

Ausgedruckt am: 21.02.2025 um 21:02 Uhr

StefanKittel
StefanKittel 07.04.2020 um 23:55:55 Uhr
Goto Top
Zitat von @73234:
In der Anwendung ist der Ort der Access-Datei fest hinterlegt.
Das wäre wichtig zu wissen was hier steht.
Nur der Dateiname oder ein kompletter ODBC-String der auf irgendwas verweist was nicht da ist.

Stefan
manuel-r
manuel-r 08.04.2020 um 06:58:44 Uhr
Goto Top
Moin

Deine 32Bit-Anwendung findet wahrscheinlich nicht den DSN den sie ansprechen soll. Schau zuerst mal unter /Windows/SysWow64/odbcad.exe nach ob der für x86 angelegt ist.

Manuel
wiesi200
wiesi200 08.04.2020 um 07:35:37 Uhr
Goto Top
Zitat von @manuel-r:

Moin

Deine 32Bit-Anwendung findet wahrscheinlich nicht den DSN den sie ansprechen soll. Schau zuerst mal unter /Windows/SysWow64/odbcad.exe nach ob der für x86 angelegt ist.

Manuel
Hallo

Währ auch mein erster Tip
73234
73234 08.04.2020 um 10:48:03 Uhr
Goto Top
ODBC für 32-bit

win10 2016

Dazu habe ich 'AccessDatabaseEngine_X64' (engl) noch einmal extra installiert.

Wie kann ich hier den Verbindungsstring aufbauen?

MfG Minion
73234
73234 08.04.2020 um 10:49:28 Uhr
Goto Top
Moin,

Eine TADO Komponente:

ado komponente 2

Aktuell läuft das unter 32-bit stabil.
manuel-r
manuel-r 08.04.2020 um 10:59:14 Uhr
Goto Top
Dazu habe ich 'AccessDatabaseEngine_X64' (engl) noch einmal extra installiert.

Ich denke das wird nicht viel bringen, wenn du doch einen 32Bit-DSN für deine 32Bit-Anwendung brauchst. Da brauchst du nämlich auch den entsprechenden 32Bit-Treiber bzw. -Engine.
Danach erstellst du einen DSN (Benutzer oder System). Der muss dann auch so benannt werden wie deine Anwendung das erwartet. Manchmal kann man in einer Anwendung auch angeben welchen DSN sie nutzen soll. Es kann aber auch sein, dass die Anwendung die Engine direkt anspricht. Dann brauchst du i.d.R. keinen DSN.

Das alles sollte dir aber der Softwarehersteller beantworten können.

Manuel
73234
73234 08.04.2020 um 11:30:09 Uhr
Goto Top
Thanks für die Antwort,

Wenn ich unter ODBC-32 einen Benutzer DNS- erstellen will, habe ich nur die Treiber-Auswahl für *.mdb - Dateien.
*.accdb - Dateien, in der die Access DB erstellt wurde, stehen nicht zur Auswahl zur Verfügung.
Somit ist es unmöglich die accdb-DB-Datei als Ziel auszuwählen.

Und das wundert mich nun, da ich die 'AccessDatabaseEngine_X64' (engl) für Office 2016 ja neu installiert hatte und annahm,
dass genau hier auch die *.accdb Datein unterstützt werden, weil neuer.

Hmm
manuel-r
manuel-r 08.04.2020 um 13:25:23 Uhr
Goto Top
*.accdb - Dateien, in der die Access DB erstellt wurde, stehen nicht zur Auswahl zur Verfügung.

Das kann ich dir jetzt auch nicht erklären. Laut Microsoft wird *.accdb unterstützt. Wäre ja auch merkwürdig wenn nicht.

This download will install a set of components that facilitate the transfer of data between existing Microsoft Office files such as Microsoft Office Access (*.mdb and *.accdb) files and Microsoft Office Excel (*.xls, *.xlsx, and *.xlsb) files to other data sources such as Microsoft SQL Server.

Ich denke das wird nicht viel bringen, wenn du doch einen 32Bit-DSN für deine 32Bit-Anwendung brauchst. Da brauchst du nämlich auch den entsprechenden 32Bit-Treiber bzw. -Engine.

Hast du denn inzwischen die x86-Version installiert? Mit x64 wird nämlich auf gar keinen Fall funktionieren mit deiner 32Bit-Anwendung.

Manuel
73234
73234 08.04.2020 um 14:38:47 Uhr
Goto Top
Die 32-bit Version von 'AccessDatabaseEngine' kann nicht installiert werden, da das MS-Office 2016 in 64 bit installiert ist.

Ich habe mit ODBC 32 einen 32-er Eintrag erstellt, der Unterstütz aber nur mdb-Dateien

win10 2016 32

Auf anderen Rechnern mit Access 32 bit funktioniert das Programm ohne Probleme.
Hier wurden keine expliziten DNS-Einträge im OBDC-Manager erstellt, es scheint die Programmierung im Programm zu greifen.
manuel-r
manuel-r 08.04.2020 um 15:05:50 Uhr
Goto Top
Auf anderen Rechnern mit Access 32 bit funktioniert das Programm ohne Probleme.

Ich habe da was hervorgehoben. Merkst du was?
Natürlich kann eine 32Bit-Anwendung bei installiertem 32Bit-Office per ODBC eine DB ansprechen. Alles was dazu notwendig ist wurde mit dem Office installiert. Eine 32Bit-Anwendung kann das aber nicht mit einem 64Bit-Office. Deswegen brauchst du die 32Bit-Komponenten.

Wenn die 2016er Engine nicht will, weil das Office schon da ist, dann versuch doch mal eine 2013er Engine als x86. Vielleicht kannst du damit tricksen. Wenn alles nicht hilft musst du halt das 64Bit gegen ein 32Bit-Office tauschen.

Manuel
73234
73234 08.04.2020 um 15:46:52 Uhr
Goto Top
Hallo,
Office 2016/64 (Ist die 'Click an Run' Version) muss bleiben und genutzt werden. MS schreibt sich ja die Abwärtskompatibilität auf die Fahnen ...

Ich bin gerade hierüber gestolpert:

Zugriff auf ODBC-Treiber oder OLEDB-Anbieter außerhalb von Office-Klick-und-Los-Anwendungen

Mal schauen...

BG Minion
73234
Lösung 73234 08.04.2020 um 22:35:45 Uhr
Goto Top
Gelöst, das Programm läuft am 64bit Office!

Basis zur Lösung bildete dieser Artikel:
Installation von 32/64 bit jeweils auf der anderen Konstruktion

In meinem Fall:
D:\AccessDatabaseEngine.exe /passiv /quiet
Also die 32-bit 2016 zum Office 2016 64 bit hinzuinstalliert!

office2016  driver 32

Nun muss sich noch zeigen, dass die Datenbank weiterhin stabil läuft ...

Fazit: Ich hoffe, dass das noch jemand mal braucht!