Am Mon den 03 Jun 2002 um 04:57:12PM +0200 schrieb Rico Koerner:
Andre Schulze wrote:
[...noch mal ne Antwort für's Mailinglistenarchiv]
ODBC fähig heißt im Fall des DBMS (1.), daß es einen ODBC Treiber gibt, der auf der Seite des Client arbeitet.
Ja so sieht das wohl überall aus. Der mysql-odbc-Treiber wird auch auf dem (Windows-)Client installiert, damit u.a. Access per DSN drauf zugreifen kann.
Ja, das geht auch mit PostgreSQL ganz gut, leider reicht es aber nicht, damit die "legacy" Windows Anwendung (3) damit arbeiten kann. Die hat noch mal ne Schicht dazwischen. Soll heißen, man muß diesem System erst noch die Datenbanken bekannt machen, obwohl die schon vom ODBC Treibermanager verwaltet sind. Krank, krank, krank das.
Die ODBC-Befehle von PHP sagen nichts über eine IP-Adresse oder eine anderweitige Bezeichnung des DB-Hosts aus:
odbc_connect(string DSN, string user, string password[, int cursor_option])
Leider habe ich das noch nicht klarer gefunden. Was hier fehlt ist wie erwähnt die Grenze, wo das Netzwerk den Client vom Server trennt.
ODBC selbst ist scheinbar nicht netzwerkfähig.
Jein, der Treiber mappt die ODBC Schnittstelle auf die native Schnittstelle des DBMS. Da die nativen Treiber idR netzwerkfähig sind, ist ein ODBC Treiber das dann auch - mehr oder weniger aber "nur" implizit.
So wie ich es im Moment verstehe liegt die zwischen Datenbanktreiber und DBMS. Kann hier jemand Licht ins Dunkel bringen?
Da sich der Treiber um's Netzwerk kümmert ist das wohl so.
Ja, aber es ist nicht näher definiert, daß es so sein muß.
Damit brauchst Du entweder einen ODBC-Treiber für Linux oder du nimmst ein DBMS mit Windows-ODBC-Treiber.
Letzters geht theoretisch, scheitert aber an den o.g. Details... .
Dein Windows-Support sollte dann am Treiber bzw. einrichten der DSN enden. Wenn die den gleichen Namen hat solltest Du nicht am Programm rumschrauben müssen.
Offen bleibt, welche Funktionalität der ODBC-Treiber hat und wie diese von dem Client genutzt werden.
Wir werden jetzt wohl mit Java arbeiten. Der JDBC Treiber funktioniert nach ersten Tests. JDBC ist wohl ODBC modulo Treibermanager rein in Java implementiert. Somit ist das portabel. Nach einer Session mit einem Java Freak habe ich dann 3.5 Stunden später eingesehen, daß wir damit wohl unsere Lösung gefunden haben. Das liegt aber weniger an JDBC, als an den Möglichkeiten, die uns die Platform Java bietet (Abstratkion der Datenbank Schicht auf eine Objekt- schicht, die dann obendrüber eine GUI bzw. Web -repräsentationssicht haben kann/wird)
Schauen wir mal,
andre