# "Adapter" Access -> MySQL?



## Guest (17. Dez 2008)

Hallo,

ich bin auf eine Anwendung angewiesen, die mit Access-DBs arbeitet. Da Access ja nun bekanntlich nicht sehr stabil und performant ist (besonders bei mehr als 5 Benutzern gleichzeitig), würde ich gerne auf MySQL umsteigen.
Auf das Programm habe ich leider keinen Einfluss.

Gibt es eine Möglichkeit sich einen "Adapter" zu bauen, der vorgibt eine Access-DB zu sein in Wahrheit aber auf MySQL arbeitet? Oder gibt es für sowas sogar schon eine fertige Lösung?

MfG und Danke

_L-ectron-X hat diesen Beitrag am 17.12.2008 um 14:17 Uhr editiert.
-Titel angepasst_


----------



## Gast (17. Dez 2008)

Sorry, im Titel müsste eigentlich "MySQL" stehen - ist aber leider aus Spamschutzgründen verboten ;-)


----------



## FArt (17. Dez 2008)

Das ist der JDBC Treiber (bis auf unterschiedliche SQL Syntax...)

Weitere Abstraktionen erreicht man z.B. mit DAOs, O/R-Mappern, Frameworks wie iBatis...


----------



## Gast (17. Dez 2008)

Hi,

die genannten Ideen bringen mir leider nichts (glaub ich jedenfalls).
Ich kann wie gesagt nichts an der Anwendung ändern - also auch nicht über welche Treiber auf die DB zugegriffen wird. Das Programm wird immer eine Access.-Datei verlangen.
Ich brauche also eine Anwendung, die eine viruelle Access-Datei erstellt und die Anfragen an diese auf eine MySQL-DB umleitet.

Gruß


----------



## FArt (17. Dez 2008)

Das kannst du wohl vergessen...

Wenn es eine ODBC-Datenquelle wäre, könnte man die einfach austauschen... vorausgesetzt es wird jetzt auch schon die JDBC-ODBC-Bridge im Programm verwendet und es gibt einen ODBC Treiber für mySQL.

Außerdem: es hängt vom Programm ab, ob man den JDBC-Treiber einfach austauschen kann... theoretisch möglich, wenn Treiberklasse und Verbindungsaufbau nicht hardcodiert sind sonder konfigurierbar, die Treiber-JARs ausgetauscht werden und die Typen und Syntax so weit wie nötig kompatibel sind bzw. weitgehend keine hartcodierten SQL Statements verwendet werden.


----------



## Landei (17. Dez 2008)

Anderer Ansatz: Das Programm greift weiter auf Access zu, aber in Access sind die Tables auf irgendetwas Ordentliches verlinkt (Irgendeine MS SQL-Version wäre wahrscheinlich das reibungsloseste). Sicher nicht die performanteste Lösung, sollte aber zumindest Stabilität (auch bei Parallelzugriff) bringen.


----------



## FenchelT (17. Dez 2008)

Die Access Applikation besteht ja im Grunde aus zwei Komponenten; dem Frontend und der dahinter liegenden Datenbank.

Du bist nicht gezwungen beides gemeinsam zu nutzen.
So wie Landei auch schon erwaehnte, kannst Du zu anderen DB verlinken.

Mache Dir ein Backup von dieser Access-DB.

Erstelle Dir z.B. mit MSSQL(Express) oder mySQL eine DB und lege die benoetigten Tabellen dort an.
Erstelle eine ODBC Verbindung zu dieser DB.
Lösche nun aus Deiner Access DB die Tabellen (Du solltest natuerlich vorher die Daten exportieren)
Verbinde Dich mittels Access und der ODBC Verbindung auf die DB deiner Wahl und verlinke die Tabellen.
Nun kannst Du mittels Deines Access-Frontends auf die Tabellen in der DB Deiner Wahl zugreifen.


Gruesse


----------

