Troels' links: Relational database systems
—Focusing on the SQL-standard, hierarchical and temporal data, and open source software.
Unfortunately, the SQL standard isn't freely available; it must be bought from ISO or INCITS. You may also be able to leaf through (and perhaps even borrow) it at your local standards organization. Freely available resources:
(See also the link to the book by Jim Melton and Alan Simon.)
- Melton, Simon: SQL:1999—Understanding Relational Language Components.
- Chris Fehily: SQL: Visual QuickStart Guide; teaches SQL by first describing the standard-based approach, and then how to adjust to the real World, using MS Access, MS SQL Server, Oracle, MySQL, PostgreSQL and DB2. A sample chapter—Retrieving Data from a Table —is available online at the publisher's website. Full disclosure: I was technical editor on the second edition of the book.
- Kevin E. Kline's nice SQL in a Nutshell has recently been updated with a 3rd edition.
- Gulutzan, Pelzer: SQL Performance Tuning. Introduction chapter online.
- Bowman, Emerson, Darnovsky: The Practical SQL Handbook—Using SQL Variants (online sample chapter: Selecting Data from the Database).
- PostgreSQL—my favorite, because
of the nice feature set.
- Default configuration often has to be adjusted to get good speed. In addition to the manual, two handy configuration guides exist: One for generation 7.4 and one for generation 8.0.
- No built-in replication support (the community seems to be gathering around Slony as the de facto standard for asynchronous replication solution, though).
- Bad collation sequence support.
- Limited OLAP features.
- Views only updatable if you write special rules (but once you learn the rule system, updatability is limited only by your sanity).
- MySQL: Runs fast on all systems, easy
to administer, well-defined replication features for simple replication setups.
Drawbacks: In its default configuration, it has some strange and serious
SQL standards violations (example: a
redefined meaning of the concatenation-operator). MySQL also has limited OLAP functionality.
Certainly, MySQL is relevant in some situations, but make
sure you have read about the many
serious MySQL gotchas
before you consider it.
MySQL's interpretation of the GNU General Public License is very strict; this means that in some commercial contexts, MySQL is not free of charge.
- Firebird/Interbase Less widely used than PostgreSQL and MySQL, but are said to provide good features.
- I haven't had the time to try it yet, but MonetDB
- Mimer SQL: Very good SQL-standards
support (close to 100% core, but few non-core features). Runs on many platforms.
- FirstSQL: Claims extensive
SQL standard support. Seems to have interesting facilities to
soften the object-relational "impedance mismatch"
often encountered when wanting to store/retrieve Java objects.
- Darwen & Date: The Third Manifesto—proposed foundation for future database systems.
- Database Debunkings:
Persistent Prevailing Database Fallacies Dispelled. Contains
a fair share of—probably justified—critique of the DBMS
- Rel—An Implementation of Date and Darwen's "Tutorial D".