PhD thesis: SQL Comprehension and Synthesis

03/03/2022
by   George Obaido, et al.
0

Structured Query Language (SQL) remains the standard language used in Relational Database Management Systems (RDBMSs) and has found applications in healthcare (patient registries), businesses (inventories, trend analysis), military, education, etc. Although SQL statements are English-like, the process of writing SQL queries is often problematic for nontechnical end-users in the industry. Similarly, formulating and comprehending written queries can be confusing, especially for undergraduate students. One of the pivotal reasons given for these difficulties lies with the simple syntax of SQL, which is often misleading and hard to understand. An ideal solution is to present these two audiences: undergraduate students and nontechnical end-users with learning and practice tools. These tools are mostly electronic and can be used to aid their understanding, as well as enable them to write correct SQL queries. This work proposes a new approach aimed at understanding and writing correct SQL queries using principles from Formal Language and Automata Theory. We present algorithms based on: regular expressions for the recognition of simple query constructs, context-free grammars for the recognition of nested queries, and a jumping finite automaton for the synthesis of SQL queries from natural language descriptions. As proof of concept, these algorithms were further implemented into interactive software tools aimed at improving SQL comprehension. Evaluation of these tools showed that the majority of participants agreed that the tools were intuitive and aided their understanding of SQL queries. These tools should, therefore, find applications in aiding SQL comprehension at higher learning institutions and assist in the writing of correct queries in data-centered industries.

READ FULL TEXT
research
11/14/2020

Synthesis of SQL Queries from South African Local Language Narrations

English remains the language of choice for database courses and widely u...
research
02/10/2021

SQLRepair: Identifying and Repairing Mistakes in Student-Authored SQL Queries

Computer science educators seek to understand the types of mistakes that...
research
07/07/2018

Recommender system for learning SQL using hints

Today's software industry requires individuals who are proficient in as ...
research
04/23/2020

QueryVis: Logic-based diagrams help users understand complicated SQL queries faster

Understanding the meaning of existing SQL queries is critical for code m...
research
09/02/2020

The Optics of Language-Integrated Query

Monadic comprehensions reign over the realm of language-integrated query...
research
02/06/2018

Axiomatic Foundations and Algorithms for Deciding Semantic Equivalences of SQL Queries

Deciding the equivalence of SQL queries is a fundamental problem in data...
research
03/01/2021

Towards Enhancing Database Education: Natural Language Generation Meets Query Execution Plans

The database systems course is offered as part of an undergraduate compu...

Please sign up or login with your details

Forgot password? Click here to reset