OJ系统-----设计数据库
数据库
我们一共创建了‘同学’、‘老师’、‘题目’、‘课程’、‘考试’和‘测试用例’6个表。
同学
‘同学’表一共有6个属性,分别为:
- 用户名
- 注册邮箱
- 密码
- AC率
- 所选课程
- 提交的题目
其中,‘提交的题目’中包含着8个复合属性,分别为:
- 提交题目的id
- 提交的时间
- 语言
- 结果
- 得分
- 代码长度
- 内存
- 运行时长
老师
‘老师’表一共有5个属性,分别为:
- 用户名
- 注册邮箱
- 密码
- 开设课程
- 上传课程的id
题目
‘题目’表一共有6个属性,分别为:
- 题目编号id
- 丛属课程
- 上传老师
- 题目类型
- 题目详情
- ac率
其中的‘题目详情’属性包括6个复合属性,分别为:
- 题目名称
- 时间限制
- 内存限制
- 描述
- 实例测试输入
- 实例测试输出
课程
‘课程’表包含5个属性,分别为:
- 课程名称
- 开课学期
- 授课老师
- 包含题目
- 对应的考试
考试
‘考试’表包含7个属性,分别为:
- 类型
- 形式
- 地点
- 时间
- 考试密码
- 授课老师
- 从属课程
测试用例
‘测试用例’这个表包含四个属性,分别为:
- 测试用例编号id
- 输入内容
- 输出内容
- 测试题目id