I-Rex: An Interactive Relational Query Debugger for SQL
I-Rex: An Interactive Relational Query Debugger for SQL
复制标题
I-Rex:用于 SQL 的交互式关系查询调试器
DOI:
10.1145/3478432.3499263
复制
发表时间:
2022
期刊:
影响因子:
--
通讯作者:
Jun Yang
中科院分区:
文献类型:
--
作者:
Yihao Hu;Zhengjie Miao;Zhiming Leong;Haechan Lim;Zachary Zheng;Sudeepa Roy;Kristin Stephens;Jun Yang
Despite the enduring popularity of SQL (Structured Query Language), it is challenging to learn and debug, even for people with considerable programming experience. There is also a lack of SQL tools with advanced debugger features like breakpoints, stepped execution, and variable watching. We present I-Rex, an interactive SQL debugger that enables users to trace the evaluation of a query by its constituent blocks, visualizing how each block computes results from its inputs, and exploring the dependencies among these blocks. I-Rex can be integrated into an autograder, which typically works by comparing the results of submitted queries against reference queries over test database instances. Instead of showing full test instances, which often overwhelm students, I-Rex automatically generates small, illustrative instances for debugging. In this demo, we show how I-Rex helps a student trace complex SQL query execution, learn the semantics of various query constructs, and understand why a query produces (or does not produce) certain results. We also show how a teacher can customize I-Rex for a set of SQL exercises over a database. Overall, we demonstrate how I-Rex supports SQL learning and debugging, thereby increasing students' self-reliance and reducing the burden on the teaching staff.