🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱
🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀
>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
Verbindung zu einer externen HSQLDB mit relativem Pfad
Verbindung zu einer externen HSQLDB mit relativem Pfad
Hallo,
ich habe schon viele gute Anregungen aus diesem Forum zu meiner Arbeit mit Base bekommen. Nun hoffe ich auf eine weitere.
Ich möchte eine odb-Datei mit einer externen Datenbank auf einem USB-Stick haben und damit an unterschiedlichen Windows-Rechnern, die alle LibreOffice haben, arbeiten. Mein Problem ist, dass man in der Verbindung zur Datenbank wohl keine relativen Pfade angeben kann, die sich auf das Verzeichnis des Frontends, der zugehörigen odb-Datei beziehen. Folgendes steht in content.xml:
<db:connection-resource xlink:href="jdbc:hsqldb:file:./database/timetracking;default_schema=true;shutdown=true"/>
/database ist ein Verzeichnis im Verzeichnis der aufrufenden odb-Datei. Ich habe alles mögliche probiert. Nur wenn ich den absoluten Pfad angebe, funktioniert alles. Ansonsten bekomme ich die Meldung, dass der angegebene Pfad nicht gefunden werden kann.
Gibt es irgendeinen Trick, wie man doch relative Pfade nutzen kann? Denn bei einem USB-Stick kann man sich nicht immer sicher sein unter welchem Laufwerksbuchstaben er angemeldet wird.
Vielen Dank!
Robert
P.S.: Ich möchte die Datenbank gern extern halten, da ich schon diverse Crashs von LibreOffice hatte, die mir dann die interne Datenbank zerschossen haben. Leider auch einmal im realen Einsatz. Außerdem möchte ich das Frontend unabhängig von der Datenbank weiterentwickeln können.
ich habe schon viele gute Anregungen aus diesem Forum zu meiner Arbeit mit Base bekommen. Nun hoffe ich auf eine weitere.
Ich möchte eine odb-Datei mit einer externen Datenbank auf einem USB-Stick haben und damit an unterschiedlichen Windows-Rechnern, die alle LibreOffice haben, arbeiten. Mein Problem ist, dass man in der Verbindung zur Datenbank wohl keine relativen Pfade angeben kann, die sich auf das Verzeichnis des Frontends, der zugehörigen odb-Datei beziehen. Folgendes steht in content.xml:
<db:connection-resource xlink:href="jdbc:hsqldb:file:./database/timetracking;default_schema=true;shutdown=true"/>
/database ist ein Verzeichnis im Verzeichnis der aufrufenden odb-Datei. Ich habe alles mögliche probiert. Nur wenn ich den absoluten Pfad angebe, funktioniert alles. Ansonsten bekomme ich die Meldung, dass der angegebene Pfad nicht gefunden werden kann.
Gibt es irgendeinen Trick, wie man doch relative Pfade nutzen kann? Denn bei einem USB-Stick kann man sich nicht immer sicher sein unter welchem Laufwerksbuchstaben er angemeldet wird.
Vielen Dank!
Robert
P.S.: Ich möchte die Datenbank gern extern halten, da ich schon diverse Crashs von LibreOffice hatte, die mir dann die interne Datenbank zerschossen haben. Leider auch einmal im realen Einsatz. Außerdem möchte ich das Frontend unabhängig von der Datenbank weiterentwickeln können.
Re: Verbindung zu einer externen HSQLDB mit relativem Pfad
... relativ zu was?
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu
Re: Verbindung zu einer externen HSQLDB mit relativem Pfad
relativ zur odb-Datei, die die Datenbank nutzt. Vielleicht habe ich das oben nicht deutlich genung geschrieben.
Die odb-Datei und ein Verzeichnis mit den Datenbankdateien liegen im selben Verzeichnis auf einem USB-Stick. Nun soll die Verbindung zu diesen Datenbankdateien über den JDBC Treiber erfolgen. Leider funktioniert das nicht, wenn ich einen relativen Pfad in Bezug auf die odb-Datei angebe. Ich habe oben ja schon geschrieben, dass relative Pfade bei der Datenbankverbindung sich wohl auf das Arbeits-Verzeichnis der Java Virtual Machine (JVM) beziehen. Solange ich keine JVM von meinem Stick laufen lasse ist, was ich eigentlich auch nicht will, kann ich also keine brauchbaren relativen Pfade angeben. Deshalb meine Frage nach einem gangbaren Umweg.
Die odb-Datei und ein Verzeichnis mit den Datenbankdateien liegen im selben Verzeichnis auf einem USB-Stick. Nun soll die Verbindung zu diesen Datenbankdateien über den JDBC Treiber erfolgen. Leider funktioniert das nicht, wenn ich einen relativen Pfad in Bezug auf die odb-Datei angebe. Ich habe oben ja schon geschrieben, dass relative Pfade bei der Datenbankverbindung sich wohl auf das Arbeits-Verzeichnis der Java Virtual Machine (JVM) beziehen. Solange ich keine JVM von meinem Stick laufen lasse ist, was ich eigentlich auch nicht will, kann ich also keine brauchbaren relativen Pfade angeben. Deshalb meine Frage nach einem gangbaren Umweg.
Re: Verbindung zu einer externen HSQLDB mit relativem Pfad
Da kannst Du so weit ich das sehe
1. nur ohne Backend/Frontend arbeiten, d.h. Frontend=Backend. Die Datenbank muss dann nicht registriert sein.
2. wäre es möglich, das Backend vor Benutzung in einen stabilen Pfad zu kopieren und diese nachher wieder zurückzukopieren
3. wäre es möglich (jetzt wird's aber sehr frickelig) die content.xml in der registrierten *.odb vor Benutzung auszutauschen
4. könnte Dir jemand (F3K hat dazu auch ein Video-Tutorial gemacht "06 OpenOffice Base: Eine HSQL Datenbank mit Frontend und Backend erstellen" Link in seiner Signatur) evtl. Tips geben wie man aus der *.odb lösgelöste Datenbankdateien direkt über den HSQL-DB-Treiber ansprechen kann (Stichwort: Split-Datenbank erstellen).
Sonstige Tips:
Wechsle das Betriebsystem - dann bist du diese Probleme los - ok, den wollte keiner haben
Daten auf einem USB-Stick zu sichern ist ... sehr mutig - alles was auf Dauer wirklich sicher funktionieren soll braucht ein Mehr-Komponenten-System, zumindest: Server+Backup+Client(s). Alles was Du da reininvestierst bekommst Du mit Gewinn zurück (wenn die Daten wichtig/nützlich sind)!
1. nur ohne Backend/Frontend arbeiten, d.h. Frontend=Backend. Die Datenbank muss dann nicht registriert sein.
2. wäre es möglich, das Backend vor Benutzung in einen stabilen Pfad zu kopieren und diese nachher wieder zurückzukopieren
3. wäre es möglich (jetzt wird's aber sehr frickelig) die content.xml in der registrierten *.odb vor Benutzung auszutauschen
4. könnte Dir jemand (F3K hat dazu auch ein Video-Tutorial gemacht "06 OpenOffice Base: Eine HSQL Datenbank mit Frontend und Backend erstellen" Link in seiner Signatur) evtl. Tips geben wie man aus der *.odb lösgelöste Datenbankdateien direkt über den HSQL-DB-Treiber ansprechen kann (Stichwort: Split-Datenbank erstellen).
Sonstige Tips:
Wechsle das Betriebsystem - dann bist du diese Probleme los - ok, den wollte keiner haben

Daten auf einem USB-Stick zu sichern ist ... sehr mutig - alles was auf Dauer wirklich sicher funktionieren soll braucht ein Mehr-Komponenten-System, zumindest: Server+Backup+Client(s). Alles was Du da reininvestierst bekommst Du mit Gewinn zurück (wenn die Daten wichtig/nützlich sind)!
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu
-
- * LO-Experte *
- Beiträge: 834
- Registriert: Fr 28. Mär 2014, 10:41
Re: Verbindung zu einer externen HSQLDB mit relativem Pfad
Hallo robma,
also ich nutze zur Anpassung des classpath das Makro, das in diesem Beitrag erwähnt wird:
http://www.libreoffice-forum.de/viewtop ... 739#p37739
Das Makro wird nach Pfadänderungen einmal gestartet und "findet" dann die DB, die im gleichen Verzeichnis wie die .odb-Datei ist. Vorteil ist, daß Datenbanken mit eingebetteter HSQL-DB trotzdem weiter benutzt werden können.
Vom USB-Stick aus empfiehlt sich auch, per Ereignis das Makro bei jedem Öffnen der Datei ausführen zu lassen. Warum, siehst du ja in dem Beitrag.
Dann müßte das Starten der .odb-Datei auf dem Stick genügen, um die "daneben" liegende Datenbank zu finden...
Gruß
Freischreiber
also ich nutze zur Anpassung des classpath das Makro, das in diesem Beitrag erwähnt wird:
http://www.libreoffice-forum.de/viewtop ... 739#p37739
Das Makro wird nach Pfadänderungen einmal gestartet und "findet" dann die DB, die im gleichen Verzeichnis wie die .odb-Datei ist. Vorteil ist, daß Datenbanken mit eingebetteter HSQL-DB trotzdem weiter benutzt werden können.
Vom USB-Stick aus empfiehlt sich auch, per Ereignis das Makro bei jedem Öffnen der Datei ausführen zu lassen. Warum, siehst du ja in dem Beitrag.
Dann müßte das Starten der .odb-Datei auf dem Stick genügen, um die "daneben" liegende Datenbank zu finden...
Gruß
Freischreiber
Freischreiber nutzt seit 1/2025 LibreOffice Version 7.2.7.2 unter Windows 11 und SplitDB mit HSQL 2.7.4.
Lesenswert: https://wiki.documentfoundation.org/ReleasePlan/de
Lesenswert: https://wiki.documentfoundation.org/ReleasePlan/de
Re: Verbindung zu einer externen HSQLDB mit relativem Pfad
Hallo zusammen,
erstmal Danke für Eure Tipps.
@ Freischreiber: Das war's, was ich brauchte! Vielen Dank. Datenbank läuft auch schon mit Skript. Herzlichen Dank nochmal.
@ gogo: genau die Gedanken hatte ich auch und sie waren nicht befriedigend für mich. Zum Sichern auf USB-Stick: Das ist keine Datensicherung sondern ein Ersatz für eine mobile Festplatte. Der wird natürlich regelmäßig und sehr oft gesichert, weil da eben wichtige Daten drauf sind, die auf die ich unbedingt auch offline zugreifen können muss. Ich find's praktisch und es erfüllt meine Anforderungen.
Schönen Abend noch.
Robert
erstmal Danke für Eure Tipps.
@ Freischreiber: Das war's, was ich brauchte! Vielen Dank. Datenbank läuft auch schon mit Skript. Herzlichen Dank nochmal.
@ gogo: genau die Gedanken hatte ich auch und sie waren nicht befriedigend für mich. Zum Sichern auf USB-Stick: Das ist keine Datensicherung sondern ein Ersatz für eine mobile Festplatte. Der wird natürlich regelmäßig und sehr oft gesichert, weil da eben wichtige Daten drauf sind, die auf die ich unbedingt auch offline zugreifen können muss. Ich find's praktisch und es erfüllt meine Anforderungen.
Schönen Abend noch.
Robert
-
- * LO-Experte *
- Beiträge: 834
- Registriert: Fr 28. Mär 2014, 10:41
Re: Verbindung zu einer externen HSQLDB mit relativem Pfad
Sag das doch gleich, dann gibt es noch eine einfachere Lösung.weil da eben wichtige Daten drauf sind

Pack deine Daten in einen Truecrypt- oder Veracrypt-Container, den du per Batchdatei immer auf den gleichen Laufwerksbuchstaben mountest,
z. B. mit
Code: Alles auswählen
C:\Programme\TrueCrypt\TrueCrypt.exe "Daten.tc" /lm:
Gruß
Freischreiber
Freischreiber nutzt seit 1/2025 LibreOffice Version 7.2.7.2 unter Windows 11 und SplitDB mit HSQL 2.7.4.
Lesenswert: https://wiki.documentfoundation.org/ReleasePlan/de
Lesenswert: https://wiki.documentfoundation.org/ReleasePlan/de
Re: Verbindung zu einer externen HSQLDB mit relativem Pfad
Was passiert wenn M:\ schon belegt ist?
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu
-
- * LO-Experte *
- Beiträge: 834
- Registriert: Fr 28. Mär 2014, 10:41
Re: Verbindung zu einer externen HSQLDB mit relativem Pfad
Dann kommt ein Truecrypt-Fenster, in dem man durch Auflistung der bereits gemounteten Laufwerke auf diese Tatsache aufmerksam gemacht wird - und das Netzteil brennt durch.Was passiert wenn M:\ schon belegt ist?

Freischreiber nutzt seit 1/2025 LibreOffice Version 7.2.7.2 unter Windows 11 und SplitDB mit HSQL 2.7.4.
Lesenswert: https://wiki.documentfoundation.org/ReleasePlan/de
Lesenswert: https://wiki.documentfoundation.org/ReleasePlan/de
An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:
Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.