🙏 Bitte helfen Sie uns das LibreOffice Forum zu erhalten. 🙏
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.
🍀 Wir hoffen auf Ihre Unterstützung - vielen Dank!🍀
>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
Externe (gesplittete) HSQLDB: Datenbankdateien von hsqldb.jar trennen?
-
- * LO-Experte *
- Beiträge: 829
- Registriert: Fr 28. Mär 2014, 10:41
Externe (gesplittete) HSQLDB: Datenbankdateien von hsqldb.jar trennen?
Hallo!
Wenn man die HSQL-Datenbank im aufgeteilten Modus verwendet, also außerhalb der odb-Datei mit einem file-Link auf die Datenbankdateien, dann liegt die Datenbank in einem eigenen Ordner, und in diesem Ordner liegt auch die benutzte hsqldb.jar-Datei. Dort ist die Datenbank drin.
Jetzt würde ich gerne die Datenbank-Dateien (dbname.data, dbname.script usw.) von der hsqldb.jar-Datei trennen.
Grund ist, daß die Datenbank selbst auf einem verschlüsselten Laufwerk liegt, die jar-Datei und die odb-Datei das aber nicht brauchen, weil dort ja keine Daten enthalten sind.
Weiß jemand, ob und wie man das hinbekommt? Also odb-Datei und jar-Datei unverschlüsselt unter Eigene Dateien, und die DB-Dateien auf einem Veracrypt-Laufwerk?
Gruß
Freischreiber
Wenn man die HSQL-Datenbank im aufgeteilten Modus verwendet, also außerhalb der odb-Datei mit einem file-Link auf die Datenbankdateien, dann liegt die Datenbank in einem eigenen Ordner, und in diesem Ordner liegt auch die benutzte hsqldb.jar-Datei. Dort ist die Datenbank drin.
Jetzt würde ich gerne die Datenbank-Dateien (dbname.data, dbname.script usw.) von der hsqldb.jar-Datei trennen.
Grund ist, daß die Datenbank selbst auf einem verschlüsselten Laufwerk liegt, die jar-Datei und die odb-Datei das aber nicht brauchen, weil dort ja keine Daten enthalten sind.
Weiß jemand, ob und wie man das hinbekommt? Also odb-Datei und jar-Datei unverschlüsselt unter Eigene Dateien, und die DB-Dateien auf einem Veracrypt-Laufwerk?
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: Externe (gesplittete) HSQLDB: Datenbankdateien von hsqldb.jar trennen?
Die hsqldb.jar, die Du da nutzt, muss nur in dem Class-Path (oder wie das gerade heißt) hinterlegt werden. Aber Vorsicht: Bei HSQLDB ist das dann so, dass die internen HSQLDB-Datenbanken auch versuchen, diese hsqldb.jar zu nutzen. Und wenn das eine neuere Variante ist, dann bekommst Du Probleme mit internen Datenbanken.
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare
Re: Externe (gesplittete) HSQLDB: Datenbankdateien von hsqldb.jar trennen?
Moin,
Ich mache das so, dass ich den Classpath per Makro in die .odb eintrage. So habe ich dann auch keine Probleme mit "normalen" .odb Dateien.
Habe gerade keinen Rechnerzugriff, kann aber demnächst einen Code-Snipsel posten.
Gruß R
EDIT: so sollte es klappen:
Ich mache das so, dass ich den Classpath per Makro in die .odb eintrage. So habe ich dann auch keine Probleme mit "normalen" .odb Dateien.
Habe gerade keinen Rechnerzugriff, kann aber demnächst einen Code-Snipsel posten.
Gruß R
EDIT: so sollte es klappen:
Code: Alles auswählen
Sub insert_link_to_HSQLDB_JAR
sdriverURL = ConverttoUrl(C:\Users\XXX\hsqldb.jar")
thisdatabasedocument.datasource.settings.JavaDriverClassPath = sdriverURL
thisdatabasedocument.store
end sub
Windows 11: AOO, LO Linux Mint: AOO, LO
-
- * LO-Experte *
- Beiträge: 829
- Registriert: Fr 28. Mär 2014, 10:41
Re: Externe (gesplittete) HSQLDB: Datenbankdateien von hsqldb.jar trennen?
Hallo Robert, hallo R!
So ähnlich macht das das von mir bisher benutzte Makro auch:
https://forum.openoffice.org/en/forum/v ... 80#p293026
(unter Option 1 - 3.x)
Das ist doch dieser berühmte "additional classpath", neben dem man keinen globalen Classpath eintragen soll? Das funktioniert auch bisher, und der classpath in der Datei vermeidet das von Robert erwähnte Problem mit embedded Dbs.
Ich habe nur den Code nie hinterfragt. Das bisherige Makro setzt für jede Base-Datei den classpath direkt neben die Datei, in eine eigene jar-Datei, die sich dort befinden muß. Das führt bei mir zu einer unnötig langsamen Datenbank, weil der ganze DB-Pfad sich auf einem Veracrypt-Laufwerk befindet!
In Zukunft werde ich das wohl besser aufteilen, odb-Datei und jar-Datei unverschlüsselt, und nur die DB-Dateien auf dem verschlüsselten Laufwerk.
Danke!
Gruß
Freischreiber
So ähnlich macht das das von mir bisher benutzte Makro auch:
https://forum.openoffice.org/en/forum/v ... 80#p293026
(unter Option 1 - 3.x)
Das ist doch dieser berühmte "additional classpath", neben dem man keinen globalen Classpath eintragen soll? Das funktioniert auch bisher, und der classpath in der Datei vermeidet das von Robert erwähnte Problem mit embedded Dbs.
Ich habe nur den Code nie hinterfragt. Das bisherige Makro setzt für jede Base-Datei den classpath direkt neben die Datei, in eine eigene jar-Datei, die sich dort befinden muß. Das führt bei mir zu einer unnötig langsamen Datenbank, weil der ganze DB-Pfad sich auf einem Veracrypt-Laufwerk befindet!
In Zukunft werde ich das wohl besser aufteilen, odb-Datei und jar-Datei unverschlüsselt, und nur die DB-Dateien auf dem verschlüsselten Laufwerk.

Danke!
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
-
- * LO-Experte *
- Beiträge: 829
- Registriert: Fr 28. Mär 2014, 10:41
Re: Externe (gesplittete) HSQLDB: Datenbankdateien von hsqldb.jar trennen?
Hallo R,
sorry, ich komme mit dem Makro nicht so ganz klar.
Aktuell sieht es bei mir so aus, da irgendwas mit einem Anführungszeichen nicht paßte:
Beim Ausführen erhalte ich "Objektvariable nicht belegt" bei thisdatabasedocument, weil ich das Makro nicht in der Base-Datei, sondern unter "Meine Makros..." gespeichert hatte.
Da würde mich interessieren, wie man die gerade geöffnete Base-Datei aufrufen kann, wenn das Makro unter "Meine Makros" steht.
Und wenn ich das Makro versuchsweise in der Base-Datei speichere, kommt zwar diese Fehlermeldung nicht mehr, aber ich kann nicht erkennen, ob das Makro etwas bewirkt hat. Kann ich die vorgenommene Pfadeinstellung im Erfolgsfall irgendwo erkennen?
Edit:
Anders gefragt: gibt es nach der Makroausführung irgendeine Stelle in der odb-Datei, wo der neue Pfad hinterlegt ist? Ich finde in der zip-Datei nichts.
Vielen Dank,
Freischreiber
sorry, ich komme mit dem Makro nicht so ganz klar.
Aktuell sieht es bei mir so aus, da irgendwas mit einem Anführungszeichen nicht paßte:
Code: Alles auswählen
Sub F3KTotal_insert_link_to_HSQLDB_JAR
REM Pfad zu einer aktuellen JAR-Datei, der im odb-Dokument gespeichert wird
sPfad = "C:\Users\...\HSQLDB\"
sURL = ConverttoUrl(sPfad)
sdriverURL = sURL & "hsqldb.jar"
msgbox sdriverURL
thisdatabasedocument.datasource.settings.JavaDriverClassPath = sdriverURL
thisdatabasedocument.store
end sub

Und wenn ich das Makro versuchsweise in der Base-Datei speichere, kommt zwar diese Fehlermeldung nicht mehr, aber ich kann nicht erkennen, ob das Makro etwas bewirkt hat. Kann ich die vorgenommene Pfadeinstellung im Erfolgsfall irgendwo erkennen?
Edit:
Anders gefragt: gibt es nach der Makroausführung irgendeine Stelle in der odb-Datei, wo der neue Pfad hinterlegt ist? Ich finde in der zip-Datei nichts.
Vielen Dank,
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
-
- * LO-Experte *
- Beiträge: 829
- Registriert: Fr 28. Mär 2014, 10:41
Re: Externe (gesplittete) HSQLDB: Datenbankdateien von hsqldb.jar trennen?
Das hab ich gefunden: statt "thisdatabasedocument..."Da würde mich interessieren, wie man die gerade geöffnete Base-Datei aufrufen kann, wenn das Makro unter "Meine Makros" steht.
Code: Alles auswählen
thiscomponent.datasource.settings.JavaDriverClassPath = sdriverURL
und
thiscomponent.store
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
-
- * LO-Experte *
- Beiträge: 829
- Registriert: Fr 28. Mär 2014, 10:41
Re: Externe (gesplittete) HSQLDB: Datenbankdateien von hsqldb.jar trennen?
Habs gefunden! In der content.xml steht nach Ausführung des Makros:Aber wo der Pfad zur hsqldb.jar gespeichert wird, ist mir ein Rätsel.
Merke: niemals mit dem internen 7zip-Dateibetrachter nach Zeichenketten suchen. Der kann das wohl nicht.<db:data-source-setting-value>file:///C:/Users/.../HSQLDB/hsqldb.jar</db:data-source-setting-value>
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: Externe (gesplittete) HSQLDB: Datenbankdateien von hsqldb.jar trennen?
Na, dann ist es ja gut.
Ich empfehle die Verwendung von Xray oder MRI.
Gruß R
Ich empfehle die Verwendung von Xray oder MRI.
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO
-
- * LO-Experte *
- Beiträge: 829
- Registriert: Fr 28. Mär 2014, 10:41
Re: Externe (gesplittete) HSQLDB: Datenbankdateien von hsqldb.jar trennen?
Und welches von beiden empfiehlst du am meisten? Ich lese immer von beiden gleichzeitig und dann vertage ich die Entscheidung, welches ich nehmen soll...

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: Externe (gesplittete) HSQLDB: Datenbankdateien von hsqldb.jar trennen?
Moin,
ich habe mit Xray angefangen komme damit gut klar und benutze es aus Gewohnheit. MRI kann noch bissel mehr.
Aus meiner Sicht also egal.
Gruß R
ich habe mit Xray angefangen komme damit gut klar und benutze es aus Gewohnheit. MRI kann noch bissel mehr.
Aus meiner Sicht also egal.
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO
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.