Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>Well, some relational DB will probably fit your bill quite nicely.</p> <p>For starters, you should check out <a href="http://en.wikipedia.org/wiki/Sqlite" rel="nofollow noreferrer">SQLite</a>, it's a SQL db that is made for embedding.</p> <p>That way, you get to use regular SQL (or an ORM of your choice) right from the start, and you can relatively painlessly migrate to a "bigger" SQL db if you later need it.</p> <p>To address your points:</p> <ul> <li>Is it suitable for small applications? (Important) <em>yes, especially useful for embedded use with little overhead</em></li> <li>Is it suitable for larger applications? How large an application could it support? <em>depends on your precise needs, but you can always migrate to a different db later</em></li> <li>The application will store data locally, but in the future may end up sharing a schema with something on the network/in the cloud.<em>SQLite will store data locally, another db could be used for network storage</em></li> <li>Are there any good libraries/ORMs for using it? <em>at least Hibernate supports it explicitly, other ORM should work as it is a SQL db</em></li> <li>Are there any cool features that may not be obvious to a newbie? -</li> <li>Why do you like using it? <em>low overhead, fast, easy to set up, yet an SQL dbms</em></li> <li>Is it a relational database? Or something else? <em>relational</em></li> <li>My app will need to version pieces of "content" at some point <em>no special support, but usually handled inside the schema anyway</em></li> </ul>
 

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