Embedded SQL Databases?
kumquat asks: "We are creating a desktop version of a java web application that currently uses MySQL. What small footprint SQL databases would you recommend embedding into applications? I'm looking for: zero maintenance, small footprint, runs in multiple platforms (Windows, Unix, Linux). Low cost or free would be a bonus. Freshmeat turned up a couple of possibilities: hysqldb and Mckoi SQL."
I don't know much about embedded DBs. I do know that Borland (for whom I work) sells Interbase, mainly as an embedded database. I have it running on my Linux box, and its footprint and maintenance needs are both quite small. It's a full-featured multi-threaded relational DB. Open Source, of course!
Enhydra makes a database called
InstantDB which is small, embedable, and Java. It's cheap, but not free. It used to be Free, and if you look around, you can find copies of the Free version around still (I'm not sure if they're maintained anymore). In reality, though, I'm not sure why you wouldn't go with hsql, which is just as good, just as embedable, and Freer. Is there something wrong with hsql that is making you look elsewhere?
If it ain't broke, you need more software.
...or whatever the hell they're calling it now.
Also not free, but it does Windows, Windows CE, Linux, and they have an "Ultralight" version for embedding.
What's a sig?
It is not free, but it's not outrageously expensive either. I believe that it costs in the low hundreds of dollars.
Take a look at JDataStore from Borland. They claim it's inexpensive, and it's designed for exactly what you want.
look here
Good luck!
I've finally found the off by one erro
Have a look at tinySQL - it's open source (LGPL), and 100% Java. It is an extensible SQL engine that has a JDBC driver. It started out life as a quick hack, but it's improved significantly thanks to the contributions of others. The most recent version is usually available in CVS, but there is a fairly recent tarball and jar file up there.
Enjoy,
Brian
If you just need SQL for one app, take look at SQLite. It's not client-server db, but SQL provided on top of gdbm files.