Ce document en français.
This extension allows you to use the HsqlDB driver of your choice, with all its features, directly in Base.
It supports all protocols natively managed by HsqlDB, namely: hsql://, hsqls://, http://, https://, mem://, file:// and res://.
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.
HsqlDB is a database written in Java.
The use of HsqlDB requires the installation and configuration within LibreOffice / OpenOffice of a JRE version 1.8 minimum (ie: Java version 8)
I recommend AdoptOpenJDK as your Java installation source.
If you are using LibreOffice on Linux, then you are subject to bug 139538.
To work around the problem, please uninstall the packages:
If you still want to use the Embedded HsqlDB functionality provided by LibreOffice, then install the HsqlDBembeddedOOo extension.
OpenOffice and LibreOffice on Windows are not subject to this malfunction.
It seems important that the file was not renamed when it was downloaded. If necessary, rename it before installing it.
Restart LibreOffice / OpenOffice after installation.
In LibreOffice / OpenOffice go to File -> New -> Database…:
In step: Select database:
In step: Connection settings:
In step: Set up user authentication:
If the connection was successful, you should see this dialog window:
If you want to update the HsqlDB driver (hsqldb.jar) to a newer version, follow these steps:
Now your database is up to date.
OpenOffice 4.1.8 - Ubuntu 20.04 - LxQt 0.14.1
OpenOffice 4.1.8 - Windows 7 SP1
OpenOffice 4.1.8 - MacOS.High Sierra
LibreOffice 220.127.116.11 - Ubuntu 20.04 - LxQt 0.14.1
LibreOffice 18.104.22.168 - Windows 7 SP1
I encourage you in case of problem :-(
to create an issue
I will try to solve it ;-)
This driver was written to work around certain problems inherent in the UNO implementation of the JDBC driver built into LibreOffice / OpenOffice, namely:
The only possible workaround for this problem is to put the driver’s Java archive (hsqldb.jar) in the Java ClassPath, but the problem is that if the driver version is other than version 1.8, then Base can no longer open odb files: HsqlDB embedded database functionality is lost. This amounts to saying that you cannot use an HsqlDB driver other than version 1.8, which is now over 10 years old…
In order to take advantage of the latest features offered by HsqlDB, it was necessary to write a new driver.
This new driver is just a wrapper in Python around the UNO services provided by the faulty LibreOffice / OpenOffice JDBC driver: it loads when calling the
sdbc:hsqldb:* protocol but uses the
jdbc:hsqldb:* protocol internally to connect.
It also provides functionality that the JDBC driver implemented in LibreOffice / OpenOffice does not provide, namely:
For now, only user management (read only) is available.
The writing of this driver was facilitated by a discussion with Villeroy, on the OpenOffice forum, which I would like to thank, because knowledge is only worth if it is shared…
Using the new version of HsqlDB 2.5.1.
Many other fix…
Added a dialog box allowing to update the driver (hsqldb.jar) in: Tools -> Options -> Base drivers -> HsqlDB driver
Many other fix…
I especially want to thank fredt at hsqldb.org for:
His welcome for this project and his permission to use the HsqlDB logo in the extension.
Its involvement in the test phase which made it possible to produce this version 0.0.3.
The quality of its HsqlDB database.
Now works with OpenOffice on Windows.
An unsupported protocol now displays an accurate error.
A non-parsable url now displays a precise error.
Now correctly handles spaces in filenames and paths.
Many other fix…
Modifying the Driver in order to return an XConnection interface providing a DataSource service with its
URL property having the
sbdc protocol necessary for proper functioning.
Modifying the Statement wrapper in order to provide the properties and methods present in the
CallableStatement services of JDBC (thanks to hanya for MRI which was of great help to me…)
com.sun.star.sdb.RowSetservice, see the use of the
self._patchedproperty as a workaround.
Managing rights and users in Base in read and write mode.
The use of the SQL Array type in the queries.
Add new languages for internationalization…