prrvchr@gmail.com
The latest version of HyperSQL database in a single odb file.
Cedocument en français.
The use of this software subjects you to ourTerms Of Use.
HyperSQLOOo is part of aSuite ofLibreOfficeand/orOpenOffice extensions allowing to offer you innovative services in these office suites.
This extension allows you:
java.sql.Array
,java.sql.Blob
,java.sql.Clob
…If you wish to migrate odb files created with LibreOffice or OpenOffice and HsqlDB version 1.8, it is imperative to use the lastest version of HyperSQLOOo. The migration procedure is given in theHow to migrate an embedded database section.
Being free software I encourage you:
In short, to participate in the development of this extension.
Because it is together that we can make Free Software smarter.
The HyperSQLOOo extension uses the jdbcDriverOOo extension to work.
It must therefore meet therequirement of the jdbcDriverOOo extension.
It seems important that the file was not renamed when it was downloaded.
If necessary, rename it before installing it.
InstalljdbcDriverOOo.oxt extension
This extension is necessary to use HsqlDB version 2.7.4 with all its features.
InstallHyperSQLOOo.oxt extension
Restart LibreOffice after installation.
Be careful, restarting LibreOffice may not be enough.
soffice
and using the key combinationCtrl + C
if after stopping LibreOffice, the terminal is not active (no command prompt).After restarting LibreOffice, you can ensure that the extension and its driver are correctly installed by checking that theio.github.prrvchr.HyperSQLOOo.Driver
driver is listed in theConnection Pool, accessible via the menu:Tools -> Options -> LibreOffice Base -> Connections. It is not necessary to enable the connection pool.
If the driver is not listed, the reason for the driver failure can be found in the extension’s logging. This log is accessible via the menu:Tools -> Options -> LibreOffice Base -> Embedded HsqlDB Driver -> Logging Options.
TheHyperSQLLogger
logging must first be enabled and then LibreOffice restarted to get the error message in the log.
Remember to first update the version of the Java JRE or JDK installed on your computer, this extension need the new version of jdbcDriverOOo that requiresJava version 17 or later instead of Java 11 previously.
In LibreOffice go to:File -> New -> Database…:
In step: Select database:
In step: Save and proceed:
Have fun…
LibreOffice offers you the possibility to import data from Calc directly into an existing table or one created for this import. Here is the procedure to follow:
If you want to migrate an integrated database (HsqlDB version 1.8.0) to a newer version (for example 2.7.2), follow these steps:
SHUTDOWN COMPACT
orSHUTDOWN SCRIPT
.HyperSQLOOo is ancom.sun.star.sdbc.Driver UNO service written in Python.
It is an overlay to thejdbcDriverOOo extension allowing to store the HsqlDB database in an odb file (which is, in fact, a compressed file).
Its operation is quite basic, namely:
.
+odb_file_name
+.lck
is created in the location of the odb file where all HsqlDB files are extracted from thedatabase directory of the odb file (unzip)./hsqldb
.The main purpose of this mode of operation is to take advantage of the ACID characteristics of the underlying database in the event of an abnormal closure of LibreOffice.On the other hand, the function:file -> Save hasno effect on the underlying database. Only closing the odb file or saving it under a different name (File -> Save As) will save the database in the odb file.
Normally, the extension is created with Eclipse for Java andLOEclipse. To work around Eclipse, I modified LOEclipse to allow the extension to be created with Apache Ant.
To create the HyperSQLOOo extension with the help of Apache Ant, you need to:
source/HyperSQLOOo/
build.properties
so that theoffice.install.dir
andsdk.dir
properties point to the folders where LibreOffice and its SDK were installed, respectively.ant
dist/
LibreOffice 24.2.1.2 (x86_64)- Windows 10
LibreOffice 7.3.7.2 - Lubuntu 22.04
LibreOffice 24.2.1.2 - Lubuntu 22.04
LibreOffice 24.8.0.3 (x86_64) - Windows 10(x64) - Python version 3.9.19 (under Lubuntu 22.04 / VirtualBox 6.1.38)
I encourage you in case of problem
to create anissue
I will try to solve it
The writing of this driver was facilitated by adiscussion with Villeroy, on the OpenOffice forum, which I would like to thank, because knowledge is only worth if it is shared…
Using the old version of HsqlDB 1.8.0 (can be easily updated).
Added a dialog box allowing to update the driver (hsqldb.jar) in: Tools -> Options -> Base drivers -> Embedded HsqlDB driver
Many other fix…
Now the driver automatically splits an odb when opened… This allow conversion of odb files produced by the built-in LibreOffice / OpenOffice HsqlDB driver
Many other fix…
I especially want to thank fredt athsqldb.org for:
His welcome for this project and his permission to use the HsqlDB logo in the extension.
The quality of its HsqlDB database.
Now works with OpenOffice on Windows.
When unzipping, a file name clash now displays a precise error.
Now correctly handles spaces in filenames and paths.
Many other fix…
Modification ofDriver.py in order to make possible the use of the Uno service:com.sun.star.sdb.RowSet
.
Many other fix…
Renamed the extension from HsqlDBembeddedOOo to HsqlDriverOOo.
Integration of HyperSQL version 2.7.2.
Renamed the extension from HsqlDriverOOo to HyperSQLOOo.
Fixedbug 156511 occurring when using the com.sun.star.embed.XStorage interface. Theworkaround is to use the copyElementTo() method instead of moveElementTo(). Versions of LibreOffice 7.6.x and higher become usable.
The absence or obsolescence ofjdbcDriverOOo extension necessary for the proper functioning ofHyperSQLOOo now displays an error message.
Many other things…
pip install requirements.txt
rdb
file format produced by theunoidl-write
compilation utility.idl
files have been updated to support both available compilation tools: idlc and unoidl-write.Add new language for internationalization…
Anything welcome…