laowantong / sqlab_island

An SQLab adaptation of SQL Island

Home Page:https://github.com/laowantong/sqlab

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

🏝 SQLab Island

Credits

This is an adaptation of SQL Island, a simple game designed to teach SQL, distributed under the MIT License on GitHub by its main author, Johannes Schildgen (Regensburg University of Applied Sciences, Germany).

The original game was adapted by Aristide Grange (University of Lorraine, France) to demonstrate the use of SQL Adventure Builder, or SQLab, a system enabling teachers to create standalone educational games for learning SQL. This system lives in a separate repository with the explanation of its principles.

Versions

To play SQLab Island, you just need to download a dump of the self-contained database and import it into your favorite SQL database management system (DBMS). There are currently three versions, all of them in English:

MySQL

  1. Download dump.sql (right-click and "Save link as...").
  2. On the command line, create a new database called sqlab_island, populate it and connect to it:
    mysql -u username -p < dump.sql
    mysql -u username -p sqlab_island
  3. On the MySQL prompt, access the first episode of the adventure:
    SELECT decrypt(42)

PostgreSQL

  1. Download dump.sql (right-click and "Save link as...").
  2. On the command line, create a new database called sqlab_island, populate it and connect to it:
    psql -U username -f dump.sql
    psql -U username sqlab_island
  3. On the PostgreSQL prompt, access the first episode of the adventure:
    SELECT decrypt(42)

SQLite

  1. Install sqlpkg.
  2. On the command line, install the required SQLite extensions:
    sqlpkg install nalgeon/crypto
    sqlpkg install nalgeon/define
    sqlpkg install nalgeon/regexp
    sqlpkg install nyurik/compressions
  3. Download dump.sql (right-click and "Save link as...").
  4. On the command line, launch SQLite:
    sqlite3
  5. On the SQLite prompt, load the required extensions, read the dump and access the first episode of the adventure:
    .load /path/to/.sqlpkg/nalgeon/crypto/crypto
    .load /path/to/.sqlpkg/nalgeon/define/define
    .load /path/to/.sqlpkg/nalgeon/regexp/regexp
    .load /path/to/.sqlpkg/nyurik/compressions/libsqlite_compressions
    .read dump.sql
    SELECT * FROM decrypt(42)

Disclaimer and potential issues

The present adaptation of SQL Island includes a few changes in the game's content to be compatible with SQLab. Any bug or problem is the sole responsibility of the adapter, and should be reported in the issues of SQLab itself.

About

An SQLab adaptation of SQL Island

https://github.com/laowantong/sqlab

License:Creative Commons Attribution Share Alike 4.0 International


Languages

Language:Jupyter Notebook 87.3%Language:PLpgSQL 12.2%Language:Python 0.5%