Exploring SQL-databases
July 5, 2009
First things first:
- SQL is not a synonym for the MySQL
- There are multiple flavors (dialects) of SQL
- There are many alternatives for MySQL
- It is not always required to use Structured Query Language (SQL) to access a database (or a virtual database)
- Relational databases contain relational data, but there are also native XML databases and databases, which hold geospatial data or any other types of data.
- Databases might not implement certain SQL-dialect (like SQL-92) in a same way or fully
- Basic operations, among other things, might be done differently in MySQL, PostgreSQL, DB2, etc. Three different ways to do the same:
- SHOW INDEX FROM tbl;
- DESCRIBE INDEXES FOR TABLE tbl
- \di
I explored through several SQL-databases, collected some identifying information and made a mindmap from my findings. It is not ment to be a comprehensive comparison of any sort, but it might help me to remember my own thoughts, when I consider them later. When evaluating products more carefully, a criteria that must be satisfied might become quite complex as there are so many related issues to think about, like how the databases behave under heavy traffic created by thousands of concurrent connections or what kind of processor power is the minimum requirement for certain website or does handhold device have enough memory for a mobile application to contain an embedded database and server.

(MySQL 5.4, SQL Server 2008, Oracle 11g Express Edition, PostgreSQL 8.4, NexusDB V3, IBM DB2 9.7, SQLite, MonetDB/SQL, Berkeley DB XML 2.4, CSQL 2.5, SQL Anywhere 11.0.1, Blackfish SQL 8, Virtuoso 5.0)