dominostein
Goto Top

Connect auf MariaDB aus MS Access über VB

Guten Tag,
ich habe ein Problem mit dem automatischen Connect auf MariaDB aus MS Access über VBA:

Es besteht ein Server mit MariaDB, aktuelle Version.
Der MariaDB Connector wurde passend installiert.
Die DSN-Datei wurde auch eingerichtet.
Der Verbindungsaufbau im laufenden MS Access funktioniert, Zugriff auf Tabellen ist möglich.
Nur vergißt Access beim nächsten Start das Passwort.

Nun das Probleme, ich wollte es per VBA automatisch verbinden.

Hier meine DSN-Datei DSN111.dsn
[ODBC]
DRIVER=MariaDB ODBC 3.1 Driver
UID=nutzer1
CHARSET=utf8
PORT=3306
DATABASE=test111
SERVER=12.12.12.12
TCPIP=1
OPTIONS=71303168
DESCRIPTION=DSN111

Dann habe ich in Access ein neues Modul gestartet und folgendes eingefügt:
Option Compare Database
Option Explicit

Dim sConn As String
sConn = "ODBC;DSN=DSN111;uid=nutzer1;pwd=password1"  
Set oDB = DBEngine.OpenDatabase("DSN111", dbDriverNoPrompt, False, sConn)  
....

Doch schon hier stoppt VBA mit der Fehlermeldung: (Außerhalb der Prozedur ungültig, Fehler beim Kompilieren) in dieser Zeile:
sConn = "ODBC;DSN=DSN111;uid=nutzer1;pwd=password1"  


Irgendwie komme ich nicht weiter, die Hilfe ist relativ nichtssagend, für mich zumindest.

Kann mir bitte jemand helfen?

Content-Key: 665938

Url: https://administrator.de/contentid/665938

Printed on: April 25, 2024 at 12:04 o'clock

Member: mbehrens
mbehrens Apr 20, 2021 at 13:44:02 (UTC)
Goto Top
Zitat von @Dominostein:

[...]

Dann habe ich in Access ein neues Modul gestartet und folgendes eingefügt:
> Option Compare Database
> Option Explicit
> 
> Dim sConn As String
> sConn = "ODBC;DSN=DSN111;uid=nutzer1;pwd=password1"  
> Set oDB = DBEngine.OpenDatabase("DSN111", dbDriverNoPrompt, False, sConn)  
> ....
> 

Doch schon hier stoppt VBA mit der Fehlermeldung: (Außerhalb der Prozedur ungültig, Fehler beim Kompilieren) in dieser Zeile:
> sConn = "ODBC;DSN=DSN111;uid=nutzer1;pwd=password1"  
> 

Da fehlt auf jeden Fall eine Deklaration für oDB.
Member: SlainteMhath
SlainteMhath Apr 20, 2021 at 14:59:25 (UTC)
Goto Top
Moin,

eindeutiger als
 (Außerhalb der Prozedur ungültig, Fehler beim Kompilieren)
kann man eine FM ja kaum schreiben...

Pack deine Variablen Definition in ein Sub oder eine Function, dann sollte das Kompilieren auch funktionieren.

lg,
Slainte
Member: Dominostein
Dominostein Apr 22, 2021 at 06:01:06 (UTC)
Goto Top
Ok, werde ich morgen mal beachten und dann ausprobieren. Erst einmal vielen Dank, ich melde mich in der nächsten Woche, ob ich Erfolg hatte.