适用于学生的基于Web的数据库模拟器

时间:2017-11-16 07:54:59

标签: html mysql database laravel browser

我的任务是在基于Web的SQL模拟器上工作,就像在SQL Fiddle或W3Schools上可以找到的那样。 SQL Tryit编辑器。以下是模拟器的要求:

  • 多名学生将同时使用模拟器。
  • 教师应该能够查看或跟踪他们的更改和查询。
  • 应该包括DDL(例如,CREATE,ALTER,DROP DATABASES& TABLES),当然会强制执行某些特权以免破坏数据库。

直接使用MySQL的模拟显然不会起作用。所以,对于那些对如何做到这一点有任何建议的人来说,这将是非常棒的。

1 个答案:

答案 0 :(得分:0)

你到那里真是一项艰巨的任务......

我会尝试这样的方法:

  • 根据学生的任务创建包含一些条目和表格的示例数据库

  • 每当学生登录并启动任务时,请为此特定用户复制此示例数据库

  • 为视图中的所有MySQL命令和执行按钮创建输入字段

  • 每当学生点击执行时:将他的输入和当前数据库状态记录到日志中,并在为用户创建的数据库上执行命令,并返回从MySQL获得的返回值(错误,消息或选择)给用户

这种方法简单可靠,因为除了他自己的数据库之外,学生不会伤害另一个数据库(如果数据库权限配置正确),并且他可以从示例数据库中恢复数据库,如果他已经完成了。

它也应该符合您的要求:

  • 多名学生可以同时处理:检查

  • 教师可以跟踪他们的更改:检查

  • DDL是可能的,学生除了自己的DB之外不会伤害任何东西:检查