Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>Why are <strong>Derby</strong> and <strong>MySQL</strong> the only RDMBS you consider? If you say <strong>Derby</strong>, you should check out <strong>HSQLDB</strong>, <strong>H2</strong>, <strong>SQLite</strong> as well. If you say <strong>MySQL</strong>, you should check out <strong>Postgres</strong> as well (which has a lot more features).</p> <p>This is just to name some free RDBMS. Of course, as Charlie already put it, there are lots of others and lots of reasons to go either way. Check out this (IMO excellent) comparison page on Wikipedia, where you will find benefits and limitations of any RDBMS:</p> <p><a href="http://en.wikipedia.org/wiki/Comparison_of_relational_database_management_systems" rel="nofollow noreferrer">http://en.wikipedia.org/wiki/Comparison_of_relational_database_management_systems</a></p> <p>As far as your requirement about your webapp being "downloadable" is concerned, of course you can embed an RDBMS (any of Derby, H2, HSQLDB) in your webapp. But you can also just make your MySQL or Postgres or whatever integration configurable and give your downloaders instructions about how to set up your webapp themselves. After all, when you use a container-configured <code>DataSource</code> for your webapp, this configuration can be done easily.</p> <p>Now, even if you think it might be easier for you to develop your webapp with an embedded database, you should always think one step ahead. Questions like:</p> <ul> <li>Will you be able to connect to that database directly, in order correct data inconsistencies easily? (It will happen to all of us)</li> <li>Will you be able to alter the schema easily?</li> <li>Will you be able to backup your data easily?</li> <li>etc etc... there are more maintenance questions, too</li> </ul> <p>Since your comments suggest that your data is increasing over time, and it should persist, I wouldn't choose an embedded version, but keep the data separate from the application. Note that this doesn't exclude Derby from your application design. It just means you'd have to run Derby as a standalone server.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload