ODBC/JDBC Zugriff auf Access DB: keine Leserechte

Hallo,

der Titel sagt schon die Hälfte meines Problems. Ich möchte (besser muss) mit eine JDBC-OBDC-Bridge auf eine Access-Datenbank zugreifen; soweit sogut, die Verbindung bekomme ich auch geregelt. Nur ist mein Problem, dass ich über die Datenbank ansich nichts weiß, sprich mir ist nicht bekannt, welche Tabellen existieren. Sinn und Zweck meines Projektes ist es, eine möglichst flexible Anbindung von Access-Datenbanken an Java Applikationen zu realisieren.

Von SQL-Server aus weiß ich, dass es möglich ist, die Tabellennamen über eine Systemtabelle abzufragen, den entsprechenden Select habe ich auch im Access eigenen SQL Dialekt realisiert: SELECT NAME FROM MSYSOBJECT WHERE TYPE=1 AND NAME NOT LIKE ‚MSYS*‘;

Wenn ich oben genannten Select jedoch ausführen möchte, schmeißt mir die Java Applikation einen Fehler aus, der besagt, dass ich keine ausreichenden Zugriffsrechte habe, um aus Systemtabellen zu lesen.

Noch ein Wort zur Anbindung: bisher habe ich es so realisiert, dass eine ODBC Datenquelle für die entsprechende Access-DB konfiguriert sein muss, damit ich mich per jdbc:odbc auf die Datenbank verbinden kann.

Meine Frage ist nun: ist es irgendwie möglich, die Zugriffsrechte so festzulegen, dass der Zugriff auf die Tabelle MSYSOBJECT funktioniert?

Noch eine zweite Frage: wie müsste ein Connectionstring aussehen, der er mir erlaubt einen lokalen (also frei vom Benutzer definierbaren) Pfad für mein MDB File anzugeben? Wie kann ich den in meine Java Anwendung einbauen?

Hallo,

SELECT NAME FROM MSYSOBJECT WHERE TYPE=1
AND NAME NOT LIKE ‚MSYS*‘;

Wenn ich oben genannten Select jedoch ausführen möchte,
schmeißt mir die Java Applikation einen Fehler aus, der
besagt, dass ich keine ausreichenden Zugriffsrechte habe, um
aus Systemtabellen zu lesen.

Die Meldung stimmt, was nicht da ist kann man auch nicht aufrufen :frowning:
Lösung: ergänze das Wort MSYSOBJECT mit einem S.

Noch eine zweite Frage: wie müsste ein Connectionstring
aussehen, der er mir erlaubt einen lokalen (also frei vom
Benutzer definierbaren) Pfad für mein MDB File anzugeben?
Wie kann ich den in meine Java Anwendung einbauen?

sorry, kenne mich mit Java nicht aus :frowning:

Grüße aus Schönberg (Lübeck)
Wolfgang
(Netwolf)