[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1. The Concepts of Sqltutor

This chapter introduces basic concepts of Sqltutor project.

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1 Tutorial Dialog

Sqltutor dialog consists of three main pages: opening dialog, tutorial and final evaluation page. Tutorial dialog is designed to be as simple as possible and is based on the very basic HTML constructs so it hopefully should run safely on any web browser. The dialog is going to be described on a case of trivial session in which we answer one simple SQL query.

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.1 Opening Dialog

From the drop down list tutorial must be selected from the opening dialog page. Other options are optional.


Figure 1.1: Opening dialog


Mandatory selection of the SQL tutorial.


Press the Continue button to open new session and start the selected tutorial.

Display datasets

For the selected tutorial displays the table of available datasets, tables and columns. Datasets are ordered by number of columns.


Unused in the current version.

Min points
Max points

Options to limit the tutorial questions according to their point rating.


When checked, help button is displayed during the dialog, where help displays the correct answer(s) for the given tutorial question.

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.2 Tutorial Dialog

Tutorial dialog page displays selected tutorial question, its corresponding tables an their columns and text area for entering SQL code.


Figure 1.2: Tutorial dialog

Execute SQL

Executes SQL query written in the text area edit component, evaluates the result (correct or wrong answer) and displays the resulting rows. Only correct answers are registered, user can execute his/her query as many times as needed for getting a correct solution.

Display data

Display rows for all tables from the given dataset. Number of rows or a table is limited to 50 for larger tables.


This button is available if help was checked in the Opening dialog page. When clicked, Sqltutor displays one or more correct SQL queries for the given question.

Next question

Next tutorial question. If all questions has been answered, tutorial is ended.

Finish test

Close the session and go to the final evaluation page and close the test.

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.3 Evaluation page

Evaluation page contains only one dialog button

New test

Close the evaluation page and return to the new seession opening dialog.

Evaluation page presents the basic review of the closed session: elapsed time, session number, number of questions. correct answers, total points from correct answers and session evaluation. The final evaluation is calculated as the number of correct points multiplied by ratio of correct to all questions reduce by penalty points for wrong and missing answers. Penalty points are defined as a Fibonacci series 1, 2, 3, 5, 8, ... .

All questions from the session dataset tables and answers are shown at the evaluation page. For wrong answers correct solution is also given. For each question internal id and the number of points is displayed in green font for correct answers and red for wrong or missing queries.


Figure 1.3: Evaluation page

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.2 Sessions, questions and answers

When tutorial is selected from the opening dialog page and started a new session is opened. Sessions record all options selected in the opening dialogue, the start time and the session status which can be open or closed. Session is closed when the tutorial dialogue is regularly finished.

All questions asked during the tutorial sessions are recorded keeping the track of your SQL answered queries. Number of tries during tutorial dialog is not relevant for the final evaluation, only the latest solution is recorded. An answer is registered when Execute SQL, Next question or Finish test button is pressed.

Each question registered in the tutorial database has a point evaluation. Trivial questions are rated by 1 point, nontrivial questions can have point rating up to 15 points. For each question one or more correct answer is stored in the database. When help is enabled during opening dialog, correct answers are displayed when help button is pressed.

Questions are asked about data from datasets, where dataset is one or more SQL tables. Datasets can be shared by different tutorials. Sqltutor selects questions in random manner, starting from easy ones to nontrivial. (1)

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.2.1 Final evaluation

Final evaluation of sessions is calculated as p*(c/t) - n, where p is the sum of points for correct answers, c is the number of correct answers, t is the number of all questions asked and n is a number of penalty points for wrong answers (1, 2, 3, ...).

[ << ] [ >> ]           [Top] [Contents] [Index] [ ? ]

This document was generated by Ales Cepek on January 18, 2018 using texi2html 1.82.