Hallo,
ich kann über VBA Access 2019 keine ODBC-Verbindungen mit einer PostgreSQL-DB herstellen. Mit den gleichen Parametern habe ich bereits den ODBC-Treiber "PostgreSQL Unicode" als ODBC-Quelle eingerichtet (siehe Abbildung) und erfolgreich Tabellen als Pass-Through importiert. Beim Ausführen erhalte ich jedoch ganz unten stehende Fehlermeldung, welche meint, dass kein Passwort übergeben wurde, obwohl der String m.E. korrekt ist.
Der zusammengesetzte connect-String lautet:
Driver={PostgreSQL Unicode};Server = localhost;Port = 5432;Database = dbname;UID = userX;PWD = passwX
Sub con_pgsql()
Dim odbcDriver As String: odbcDriver = "Driver={PostgreSQL Unicode};"
Dim server As String: server = "Server = localhost;"
Dim db As String: db = "Database = dbname;"
Dim port As String: port = "Port = 5432;"
Dim user As String: user = "Uid = userX;"
Dim pwd As String: pwd = "Pwd = passwX"
Dim conPostgres As String: conPostgres = odbcDriver & server & port & db & user & pwd
Dim con As ADODB.Connection
Set con = New ADODB.Connection
con.Open conPostgres
if con.State = 1 Then con.Close _
Else: Debug.Print "No connection to close."
End Sub
VBA-Fehlermeldung:
Laufzeitfehler '.....'
fe_sendauth: no password supplied
Danke!
Du hast in deinem ConnectionString Leerzeichen vor unter hinter den Gleichheitszeichen. Mindestens beim Passwort ist das Problematisch, weil ein m.W. ein Leerzeichen auch ein gültiges Zeichen innerhalb des Passworts wäre (sein könnte).
Ich würde als erstes die Leerzeichen entfernen.
Zitat von: PhilS am März 09, 2020, 08:26:25
Du hast in deinem ConnectionString Leerzeichen vor unter hinter den Gleichheitszeichen. Mindestens beim Passwort ist das Problematisch...
Herzlichen Dank, das war das Problem!