This week's book giveaway is in the General Computing forum. We're giving away four copies of Arduino in Action and have Martin Evans, Joshua Noble, and Jordan Hochenbaum on-line! See this thread for details.
We're not really a fan of Access 'round these parts, we like to say you can use a database or you can use Access
Seriously though, I think it's better to use a DB and try to avoid Access. If you're looking for something light, have a look at HSQLDB (on sourceforge). It can be run several ways, but in general you do not need to maintain a server.
Hi In addition to HSQL i suggest you check Derby which is open source and could be used in embeded mode there are several documentation about embeding it into application servers , and some very good samples too.
checkout : http://db.apache.org/derby/ you can get a good database manager from IBM , or use Netbeans which has derby module integrated into IDE.
I think you should consider money and power before deciding on your database. Some databases are definitely more expensive then others whereas some allow a lot more power, especially in distributed computing.
For example, Oracle is usually more expensive than SQL Server, but often more powerful (although I haven't checked pricing and new features lately so this could be out of date). Then again, if you aren't in a situation where you don't need the power, then you're throwing your money away where you don't need to.
Chances are if you don't know what you want to use, go with MySQL for now since it will save you a lot of money. IBM's Cloudscape database recently became an open source project, although I don't know too many people using it other than to manage WebSphere queues, so it probably has its own pluses/minuses. [ November 27, 2005: Message edited by: Scott Selikoff ]
I am sorry i could not explain the issue properly, I think the corrcect phrase was "embedded database". I knew some about oracle, and quite about mysql. However to use them in my application i must to setup server in addition to my application's setup.
I wanted to create just one setup, put required datafiles to program's folder and using the correct driver, handle all of the database works of the application.
I understand from answers that hsql and derby fulfils my need ( can work as embeded ).
However i am not so sure, if i am wrong please correct me.
MySQL can also be embedded in your app, but probably HSQLDB would be much easier to use. HSQLDB is written in pure Java, so you can be sure it works on any platform that Java runs on.