JSP+Servlet培训班作业管理系统[6]–Mysql数据库结构设计

1. 本章任务

之前已经实现了登录、登录后跳转后台页、后台页显示用户信息、后台页显示用户角色对应菜单的功能。


时候来设计下整体数据库了,没有数据库存储,我们的系统始终是一个简单的演示系统,不具备实际意义。


本章就来设计下整体数据库结构。


数据库设计,其实是一个经验活,做的多了,就知道大概该如何设计了。鉴于看这个教程的人绝大部分都是新手,我此处就稍微引导大家下,需要注意的是对新手来说,实际上能看懂就行,暂时还不需要理解为何要如此设计。


2. 实体有哪些

首先就是先想想有哪些实体:


用户是必不可少的,有三类用户:校长、教师、学生,但是其实都是属于用户,这是这些用户的角色不同。

课程也是必须的,教师需要教课,学生需要选课。

作业题目,教师可以发布课程的作业题目。

作业内容,选择相应课程的学生需要提交对应的作业内容。

3. 实体之间的联系

只有实体对数据库结构的描述还不够清晰,我们再关注下实体之间的联系。


教师与课程是1对多的关系,一个教师可以教多门课程,但是一门课程只有一个人负责的教师。

学生与课程是多对多的关系,一个学生可以选多门课程,一门课程也可以有多名学生选择。

作业题目和课程是一对多关系,一个课程可以发布多次作业题目,但是一个作业题目只能属于一门课程。

作业内容和作业题目是多对一关系,一个作业题目可以有多个学生提交的多份作业内容。

4. 总结

了解了实体及他们之间的关系,基本上数据库结构就出来了,当然这还需要一些经验,下一章我们会给出真实的数据库结构,作为新手的话,能看懂这些数据库表就行。

上一篇:十大最酷云计算应用程序创业企业


下一篇:pip 的 Assert Error