Structured Query Language/Learning by Doing

When learning SQL (or any other programming language), it is not sufficient to read books or listen to lectures. It's absolutely necessary that one does exercises - prescribed exercises as well as own made-up tests. In the case of SQL, one needs access to a DBMS installation, where he can create tables, store, retrieve and delete data, and so on.

This page offers hints and links to some popular DBMS. In most cases, one can download the system for test purposes or use a free community edition. Some of them offer an online version so that there is no need for any local installation. Instead, such systems can be used in the cloud.

Often, but not always, a DBMS consists of more than the pure database engine. To be able to formulate SQL commands easily, we additionally need an interactive access to the database engine. Different client programs and IDEs provide this. They offer interactive access, and in many cases, they are part of the downloads. (In some cases, there are several different clients from the same producer.) At the same time, there are client programs and IDEs from other companies or organizations which offer only an interactive access but no DBMS. Such clients often support a lot of different DBMS.

Derby
http://db.apache.org/derby/

Firebird
http://www.firebirdsql.org/

IBM DB2
http://www-01.ibm.com/software/data/db2/linux-unix-windows/

IBM Informix
http://www-01.ibm.com/software/data/informix/

MariaDB
https://mariadb.org/

MS SQL Server
http://www.microsoft.com/en/server-cloud/products/sql-server/default.aspx

MySQL
DBMS: http://dev.mysql.com/downloads/

IDE for administration and SQL-tests: http://dev.mysql.com/downloads/workbench/

Oracle
The Oracle database engine is available in 4 editions: Enterprise Edition (EE), Standard Edition (SE), Standard Edition One (SE One), and Express Edition (XE). The last-mentioned is the community edition and is sufficient for this course. http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html.

SQL-Developer is an IDE with an Eclipse-like look-and-feel and offers access to the database engine. http://www.oracle.com/technetwork/developer-tools/sql-developer/overview/

In the context of Oracles application builder APEX (APplication EXpress), there is a cloud solution consisting of a database engine plus APEX. https://apex.oracle.com/. Among a lot of other things, it offers an SQL workshop where everybody can execute his own SQL commands for testing purposes. On the other hand, APEX can be downloaded separately and installed into any of the above editions except for the Express Edition.

PostgreSQL
http://www.postgresql.org/

SQLite
http://www.sqlite.org/

Online Access
SQL Fiddle offers an online access to following implementations:

MySQL, PostgreSQL, MS SQL Server, Oracle, and SQLite.