It depends on your needs.
MySql is far away from standards, missing subqueries and loved by webhackers - because of it's silly name. If you're looking for an OpenSource Database which is a bit professional, have a look at postgresql.
MSsqlServer is bad. A) it's from Micorsoft. B) it's bad.
Once I was forced to use it, and made a query to timefields. I took the value as
string. I send the same string back for update. It worked fine till '03-12'. On '03-13' it gave me an error. And - did I mention it is from MS?
Oracle is the market-leader. Fast, big - and expensive.
For small projects I would have a look at hsqldb - a pure java/in-memory-db.
JDataStore is a perfect stranger to me.