SQLOJ
一个集成SQL语句自动评测和多种实用功能的轻量级数据库系统实验平台GitHub传送门
功能
概述
- 对于老师而言
- 在平台上发布作业(实验),同时布置每次作业的题目
- 在平台上查看同学们的完成情况,并能具体看到同学们提交的代码或同学们的作答情况
- 上传自定义数据库,并在其上设计题目以供学生使用
- 对于学生而言
- 随时查看日常作业的信息(包括第几次作业、DDL等)和自己的完成进度
- 利用在线代码编辑器提交SQL语句或者利用富文本编辑器回答文本问题,做到实验平台和作业平台的统一
- 学生提交可以看到输出结果并能获得错误信息。在此基础上扩展了数据隔离、错误类型、多语句提交等
用户管理
用户角色
- teacher
- 此类用户为老师或者助教设计,该用户角色可以管理学生账户,同时可以发布作业、添加题目、审查完成情况等。
- 默认老师账户: admin
- 默认老师密码: tsxt-adm1n
- student
- 此类用户为学生设计,该类型用户为teacher用户创建,允许更改密码,该用户角色可以回答题目、在线debug等。
登录界面
Teacher功能界面节选
添加作业
在作业中添加问题
在一次作业中添加问题需要老师给出:
-
问题对应的数据库
- 例:chinook(一个样例数据库)
-
问题名称
- 例:problem 1
-
问题描述
- 查询’Led Zeppelin’的所有albums的title
-
问题的答案
-
select title from artists natural join albums where name = 'Led Zeppelin'
-
-
问题的类型:是SQL题目还是文本问题
- 例:SQL
上传数据库
上传的数据库