项目实训记录5

本文详细介绍了在线考试系统的数据库逻辑和物理设计,包括ER图、数据字典和索引设置,并强调了数据安全和系统安全措施。数据安全通过登录验证和操作审查确保数据准确性和一致性;系统安全通过身份认证和权限控制防止越权操作。同时,讨论了用户、班级、科目和考试之间的关系,以及如何处理年级转换和教师角色的问题。虽然某些细节如分数存储和题目类型未明确,但整体设计为实现多级分类和权限管理奠定了基础。
摘要由CSDN通过智能技术生成

需求分析进行完成后,开始进行数据库设计,具体设计如下:

在线考试系统数据库设计

  • 数据库逻辑设计
  1. ER图

approval

classes

exam

exam_classes

exam_topic

subjects

topic

user

user_classes

user_grade

user_password

user_topic

  1. 数据字典

approval[g1] 

classes[g2] 

exam[g3] 

exam_classes[g4] 

exam_topic[g5] 

subjects

topic[g6] 

user[g7] 

user_classes[g8] 

user_grade

user_password

user_topic[g9] 

  • 数据库物理设计
  1. 索引

  1. 安全机制

  系统安全、数据安全

2.1数据安全:

  程序启动需要经过登陆认证,登陆ID 和密码正确才能启动程序。

 程序内部的任何会引起数据库改动的操作(增删改)均经过了严密的审查判定,以确保数据库的准确性和一致性。

2.2系统安全:

 登陆需经过身份认证,即身份口令密码一致才可登录。

 不同的用户角色有不同的权限,用户只能使用分配给他的权限,无法越权操作。


这个表什么意思?老师与学生的关系?是否需要绑定科目字段

年级与班级的关系,是否在此表体现

还是年级有单独的表,

针对题库、试卷,同年级同科目老师可相互查看修改,当前表结构是否能走通

  1. 考试是否有年级概念,如何控制同年级同科目的其他老师可查,改

考试是与班级挂钩的,如何添加单独的考试成员

  1.  每个题目的分数?
  2. 自动组卷的选项没有体现,此选项可以不存,将前端选择的规则直接发给后端,从题库中按传入的参数自动组卷后呈现在页面中,供后续进行人工增删操作
  1.  subject_name是否有必要存在,

否则,如果原始表subject中name修改后,该表中的subject_name需要联动修改

其他表也有类似情况

  1. 选择题会包含多个选项,该表中选项字段怎么存储,

如果是选择题,单选与多选,正确答案字段怎样关联选项字段

如果是填空题,单个空和多个空,要怎么存储

  1. 是否需要分数字段,在每张试卷中同一试题分数可能不同
  2. 是否增加年级字段
  3. 需求中题目分类怎样体现,需求书中的多级分类又怎么表示

Password为什么单独拆分出一个表来

user_status、User_position都包含什么内容

是否增加账号是否有效字段 

  1. Position都包含什么内容?与user表中的user_position是一样意思吗

学生、班级是一对一关系,老师与班级、所教科目是一对多关系,在这个表或其他表是否能表示

  1. 学生由二年级到三年级怎么处理,有转班、留级情况怎么处理
  2. 老师一直任教初三或高三怎么处理,老师随着学生由二年级到三年级怎么处理

此处classes_id是否有必要存在,其他表中已有user_id与classes_id关联

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值