vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

ADO.NET / Datenbanken
OLEDB: ConnectionString Fehler 
Autor: tompkins
Datum: 17.03.15 12:51

Hallo,

ich versuche eine Verbindung zu einer Access DB aufzubauen:

 
 Dim cnnAcc = New OleDbConnection
 
 With cnnAcc
     .ConnectionString = "PROVIDER=Microsoft.ACE.OLEDB.12.0; Data Source=" & _
       DBPfad & "; Mode=Read;Jet OLEDB:Database Password = " & Passwort           
     .Open()
 End With
Die Variable DBPfad lese ich aus einer ini-Datei aus. Beim Ausführen bekommen ich die Fehlermeldung:
"format of the initialization string does not conform to specification starting at index 95".

Vorher hatte ich die Variable über die AnwendungsSettings beschrieben, da hat es funktioniert.

Was kann das sein?

Grüße
tompkins
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: OLEDB: ConnectionString Fehler 
Autor: Manfred X
Datum: 17.03.15 13:13

Hallo!

Verwende am besten den "System.Data.OleDb.OleDbConnectionStringBuilder".

Und kläre mal, was sich an Position 95 Deines Strings so tut (aktuelle
Variablenwerte bei Indexbestimmung einbeziehen).

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: OLEDB: ConnectionString Fehler 
Autor: tompkins
Datum: 18.03.15 07:26

An Stelle 95 ist das Ende des Pfades für DataSource.

Habe mal folgendes versucht:

Dim DBPfad As String
 
DBPfad = "C:\DB.accdb"
 
With cnnAcc
    .ConnectionString = "PROVIDER=Microsoft.ACE.OLEDB.12.0; Data Source=" & _
      DBPfad & "; Mode=Read;Jet OLEDB:Database Password = " & Passwort
    .Open()
End With
So funktioniert es. Nur wenn ich die Variable über eine ini-Datei einlesen nicht.
 
Dim strRetString As String
strRetString = Space(255)
 
GetPrivateProfileString("Pfade", "Datenbank", "C:\DB.accdb", strRetString, Len( _
  strRetString), Application.StartupPath & "\config.ini")
DBPfad = strRetString.Trim
strRetString = Space(255)


Beitrag wurde zuletzt am 18.03.15 um 07:27:17 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: OLEDB: ConnectionString Fehler 
Autor: Manfred X
Datum: 18.03.15 07:46

Hallo!

Was sagt die Doku GetPrivateProfileString?
[I]the return value is the number of characters copied to the buffer,
not including the terminating null character.[/I]

Verwende also die Rückgabe der Funktion, um einen Substring von "strRetstring"
in der korrekten Länge - ohne den Null-Abschluß - zuzuweisen.

Beispiel

Beitrag wurde zuletzt am 18.03.15 um 08:04:10 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: OLEDB: ConnectionString Fehler 
Autor: tompkins
Datum: 18.03.15 11:14

Perfekt, das war es.

Danke!
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel