Verbindungsinformationen ODBC - wo gespeichert?

11/10/2008 - 10:42 von Josef Morlo | Report spam
Hallo,

Access XP (alle SP's), Win XP SP 2, SQL Server 2000 (Dev.) SP 4

Ich greife per ODBC auf eine Serverdatenbank zu (DAO, DSN-less, direkter
Zugriff) mit

Set mDb = DBEngine.Workspaces(0).OpenDatabase("", False, False, ConnString)

Funktioniert auch soweit.

Soweit ich recherchiert habe, werden die Verbindungsinformationen beim
ersten Zugriff im Frontend gespeichert/gepuffert. Genaueres habe ich aber
nicht in Erfahrung bringen können. Das Frontend merkt zwar, wenn
beispielsweise die Verbindung unterbrochen wird (3146), nicht aber, wenn
sie wieder hergestellt worden ist, es sei denn, ich starte das Frontend
nochmal neu.

Daher meine Fragen.
1: Wo genau werden die Verbindungsinformationen gespeichert?
2: Kann ich sie per Code zurücksetzen oder überschreiben?
3: Oder: muss ich zwangslàufig das Frontend neu starten, um sie
zurückzusetzen?

Beispiel:
1.Server-Dienstmanger gestartet - Verbindung herstellen - funktioniert
2.Dienstmanager beendet - Verbindung herstellen - 3146
3.Dienstmanager gestartet - Verbindung herstellen - 3146
4.Dienstmanager gestartet - Neustart Frontend - Verbindung herstellen -
funktioniert

Danke und Gruß

Josef Morlo
 

Lesen sie die antworten

#1 Thomas Möller
12/10/2008 - 16:47 | Warnen spam
Hallo Josef,

Josef Morlo schrieb:
Access XP (alle SP's), Win XP SP 2, SQL Server 2000 (Dev.) SP 4
Ich greife per ODBC auf eine Serverdatenbank zu (DAO, DSN-less, direkter
Zugriff) mit
Set mDb = DBEngine.Workspaces(0).OpenDatabase("", False, False, ConnString)
Funktioniert auch soweit.
Soweit ich recherchiert habe, werden die Verbindungsinformationen beim
ersten Zugriff im Frontend gespeichert/gepuffert. Genaueres habe ich aber
nicht in Erfahrung bringen können. Das Frontend merkt zwar, wenn
beispielsweise die Verbindung unterbrochen wird (3146), nicht aber, wenn
sie wieder hergestellt worden ist, es sei denn, ich starte das Frontend
nochmal neu.

Daher meine Fragen.
1: Wo genau werden die Verbindungsinformationen gespeichert?
2: Kann ich sie per Code zurücksetzen oder überschreiben?
3: Oder: muss ich zwangslàufig das Frontend neu starten, um sie
zurückzusetzen?



nach meinem Verstàndnis und nach meinen Erfahrungen speichert Access
nicht die Verbindungsinformationen. IMHO speichert Access statt dessen
die Connection. Wenn Du spàter ein Objekt aufrufst, in den dessen
Eigenschaften die entsprechende ODBC-Verbindung eingetragen ist, wird
die gespeicherte Connection verwendet.
Um die Connection zu reaktivieren sollte es IMHO reichen, wenn Du per
VBA eine PT-Abfrage ausführst und dabei die vollstàndigen
Verbindungsinformationen (incl. User-ID und PWD) angibst.

HTH
Thomas

Homepage: www.Team-Moeller.de

Ähnliche fragen