Forums Neueste Beiträge
 

Links zu vielen Firebird Datenbanken erstellen

03/10/2007 - 08:31 von arno | Report spam
Hallo,

Access 2003

ich möchte auf eine schlecht designte Datenbank (Firebird) zugreifen. Die
Firebird Datenbank besteht aus einer "grossen" GDB-Datei auf die ich per
ODBC Zugriff habe, kein Problem. Das Problem sind sehr viele kleine
GDB-Dateien ("Projektdatenbanken", jede Datei ist eine unserer Baustellen),
die mit dieser Datenbank über einen Pfad verbunden sind (dh. in der
"grossen" Datenbank steht in einem Feld der Pfad zur entsprechenden
"Projektdatei"). Auf dieses Design habe ich keinen Einfluss, leider.

Ich möchte nun in einer MDB Links zu allen Projektdateien. Was kann ich tun,
um eine Projektdatei z. B. direkt über den Firebird Treiber (also nicht
ODBC) zu verlinken? Eine Schleife zur Einbindung aller Dateien eines
Verzeichnisses kann ich mir dann selber basteln (da es ja tàglich mehr
dateien werden).

Geht das irgendwie per ADO, DAO (connection-Objekt, connect-eigenschaft
etc...)?

Eine Verlinkung über ODBC geht nicht, da erstens nur eine gdb-Datei eine DB
sein kann und es mir zweitens gar nicht möglich ist auf die kleinen Dateien
per ODBC zuzugreifen, da immer nur die "grosse" vorhanden ist.

In FoxPro ist es angeblich möglich, Links zu mehreren GDB-Dateien
aufzubauen, und zwar so:

**schnipp**
in VisualFoxPro you can use SqlStringConnect function to do this.
You don't need to create an ODBC data-source, just install driver.

Example:

cSqlStrConn="DRIVER=Firebird/InterBase(r)
driver;DIALECT=3;NOWAIT;UID=myuser;PWD=mypassword;DATABASE=localhost:c:\db\"

*/// Connect database MyDb001
nMyConn1=SqlStringConnect(cSqlStrConn+"MyDb001.fdb")

*/// Connect database MyDb002
nMyConn2=SqlStringConnect(cSqlStrConn+"MyDb002.fdb")
**schnapp**

So etwas in der Art brauche ich für Access.

Viele Grüsse

arno
 

Lesen sie die antworten

#1 Thomas Möller
03/10/2007 - 10:01 | Warnen spam
Hallo Arno,

arno schrieb:
In FoxPro ist es angeblich möglich, Links zu mehreren GDB-Dateien
aufzubauen, und zwar so:

**schnipp**
in VisualFoxPro you can use SqlStringConnect function to do this.
You don't need to create an ODBC data-source, just install driver.

Example:

cSqlStrConn="DRIVER=Firebird/InterBase(r)
driver;DIALECT=3;NOWAIT;UID=myuser;PWD=mypassword;DATABASE=localhost:c:\db\"

*/// Connect database MyDb001
nMyConn1=SqlStringConnect(cSqlStrConn+"MyDb001.fdb")

*/// Connect database MyDb002
nMyConn2=SqlStringConnect(cSqlStrConn+"MyDb002.fdb")
**schnapp**

So etwas in der Art brauche ich für Access.



es sollte auch unter Access möglich sein, mehrere Connections zu öffnen:

Dim cnn1 As ADODB.Connection
Set cnn1 = new ADODB.Connection
cnn1.Open "Driver=Firebird/InterBase(r) driver;" & _
"Uid=myuser;" & _
"Pwd=mypassword;" & _
"DbName=c:\db\MyDb001.fdb;"


Dim cnn2 As ADODB.Connection
Set cnn2 = new ADODB.Connection
cnn1.Open "Driver=Firebird/InterBase(r) driver;" & _
"Uid=myuser;" & _
"Pwd=mypassword;" & _
"DbName=c:\db\MyDb001.fdb;"


Mehr Infos zum verwendeten Connection-String findest Du hier:
http://www.connectionstrings.com/?carrier=firebird
(Link in einer Zeile)


HTH
Thomas

Homepage: www.Team-Moeller.de

Ähnliche fragen