I've always wanted to get hsqldb working. It's a relational dbms in Java with a license that allows you to use it in most any project you want, requiring (afaict) just some text recognizing its use in your app. A very fair trade for us people aspiring to create (well, I've created -- aspiring to sell) commercial Java applications that would benefit from an rdbms backend (what app wouldn't?!).

Unf. each time I've tried, I've done it on my Mac and had issues. Finally, however, I believe I've figured out my last bit of trouble. Turns out it's b/c I'm using an OS X specific prebuilt SQuirreL SQL (favorite xplat isql client) with a version of hsqldb that expects 1.4. Here's a post I ran on the hsqldb site...

Along these same lines, if you're using SQuirreL 1.1final1 with OS X and the prebuilt jar for HSQLDB and run into this...

java.lang.NoClassDefFoundError: java/sql/Savepoint

... error, here's what's up, afaict. The app builder application for Java apps on OS X (what turns them into double-clickable bundles instead of jar files, etc) allows one to select which JRE the app uses. One option is to force the use of 1.3 (there were some issues with 1.4.1_01 on OS X 10.2 so both versions are kept) no matter what other versions are installed.

So if that happens and your JDBC driver requires 1.4 (and JDBC 3.0, iirc) -- which includes the savepoint jive -- you'll be sol using the prepackaged Squirrel on OS X even if you have 1.4 installed.

The answer is to run SQuirreL from the command line instead, either extracting the jar from the app bundle (by control-clicking the SQuirreL app's icon) or installing the xplat version (squirrel-sql-1.1final1-install.jar). Unf. the xplat version uses the Kunstoff (sp?) look and feel from Incors, which doesn't display correctly in 1.4 on 10.2 (Swing issues being one of the reasons Apple kept 1.3 on the OS alongside 1.4). Fee-uhn. You can muddle through, but it's a bit of a pain. Then run from that jar instead of the OS X pre-packaged version.

Good luck. Hope that helps someone other than me.