Choosing the right database technology
Before extending the note application, let's take a look at the different database technologies available for use.
Relational databases
The predominant type of database is the relational database. The foundation of relational databases is the relational model, a mathematical notation developed in the late sixties by E. F. Codd. The basic idea is to define structures and integrity features and manipulations on them. Most relational databases today use SQL, the Structured Query Language, to implement the relational model. A collection of tables defines the structure of the database. A table is a collection of rows that have the same columns. Each table must have a primary key consisting of one or more columns. The primary key uniquely identifies a row in the table. In order to reference a row in another table, you store the primary key of the referenced row in your table. This is called a foreign key. Integrity demands that the foreign key must exist...