# 一、需求分析
- **开发意义:** 随着信息技术不断向深入发展,越来越多的学校开始着手信息化建设。其中学生选课、成绩信息化管理就是其中重要的一块内容。学生选课与成绩信息规模大、项目条数多、信息量庞大,传统的人工管理方式显然已经无法满足要求,需要借助计算机来进行现代化信息管理,从而提高管理的准确性与高效性。
- **可行性:** 传统人工管理成绩存在诸多弊病,比如准确性低、效率低等。计算机具有存储快、查找便利、准确性高的特点,能非常好的解决人工管理的弊病。
- **应用环境:**
- Web服务器:tomcat8.5;
- 编程工具Eclipse Java 2019-09;
- 数据库:SQL sever 2017;
- 技术路线: jsp+servlet+javabean;
## 1.1系统功能需求
系统功能框架介绍,处理模块描述。
- 管理员:
1. 查询教师名单;
2. 添加教师信息;
3. 修改教师信息;
4. 删除教师信息;
5. 查询学生名单;
6. 添加学生信息;
7. 修改学生信息;
8. 删除学生信息;
9. 查询课程信息;
10. 添加课程信息;
11. 修改课程信息;
12. 删除课程信息;
13. 修改登录密码;
- 教师:
1. 查看个人信息;
2. 查看任课信息;
3. 按照课程表信息开设课程;
4. 取消个人已开课的课程;
5. 按行政班级查看学生均绩及排名;
6. 按任课课程查询学生单门成绩及排名;
7. 按学年查询个人教授课程的平均成绩;
8. 录入学生成绩, 自动更新该学生已修总学分;
9. 修改登录密码;
- 学生:
1. 查看个人信息;
2. 查看本人课程;
3. 选课与退选;
4. 按学年查询考试成绩;
5. 修改登录密码;
![图1.1.1 系统功能需求](https://img-blog.csdnimg.cn/20200104155621922.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDMxODE5Mg==,size_16,color_FFFFFF,t_70)
## 1.2 其他性能需求
1. 分管理员、教师、学生不同身份登录,并给予不同的权限,提高系统安全性;
2. 使用前端验证保证用户的输入正确。
3. 创建触发器及存储过程,保证完整性。
4. 充分考虑系统报错情况,尽量防止系统崩溃。
# 二、概念结构设计
## 2.1实体关系分析
1. 开设班级,每个班级包含若干学生;
2. 课程由教师开设;
3. 同一门课可能有多个教师开课,一个教师在一学期可能开多门课程;
4. 需要考虑不同学年,并以学年制管理学籍;
5. 不考虑按照班级直接开课的情况,即所有课程均由学生自由选择;
6. 一个学生只能选择某位老师的开的某个课程,即学生不能同时选择同一门两个不同老师开的课程;
7. 不存在两个及以上老师联合开课的情况,即不存在两个及以上教师负责同一教学班的情况。
## 2.2 E-R图
基于以上分析可得以下E-R 图:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200104155743402.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDMxODE5Mg==,size_16,color_FFFFFF,t_70)
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200104155758431.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDMxODE5Mg==,size_16,color_FFFFFF,t_70)
# 三、逻辑结构设计
## 3.1关系模式设计
将E-R图转换为以下关系模式:(加粗代表主键,斜体内容表示外键)
- 班级(**班级编号**, 班级名称)
- 学生(**学号**, 姓名, 性别, 年龄, 生源所在地, 已修学分总数, 登录密码, *班级编号*)
- 课程(**课程编号**, 课程名称, 学时, 考试或考查, 学分)
- 教师(**教师编号**, 姓名, 性别, 年龄, 职称, 电话, 登录密码)
- 开课情况(**开课编号**,*课程编号*, *任课教师编号*,开课学年, 开课学期,**学号**,成绩)
- 选课情况(***开课编号*,*学号***,成绩)
## 3.2数据类型定义
对关系模式中的属性定义类型、长度和约束:
1. 班级
| 数据项名 | 数据类型 | 长度 | 完整性约束 | 备注 |
| --- | --- | --- | --- | --- |
| 班级编号 | nvarchar | 4 | 主键,唯一,非空 | |
| 班级名称 | nvarchar | 20 | 非空 |
2. 学生
| 数据项名 | 数据类型 | 长度 | 完整性约束 | 备注 |
| --- | --- | --- | --- | --- |
| 学号 | nvarchar | 12 | 主键,唯一,非空 | |
| 姓名 | nvarchar | 5 | 非空 |
| 性别 | nvarchar | 1 | 非空 |
| 年龄 | int | 4 | 非空 |
| 生源所在地 | nvarchar | 20 | 非空 |
| 已修学分总数 | float | 4 | |
| 登录密码 | nvarchar | 20 | 非空 |
| 班级编号 | nvarchar | 4 | 外键,非空 |
3. 课程
| 数据项名 | 数据类型 | 长度 | 完整性约束 | 备注 |
| --- | --- | --- | --- | --- |
| 课程编号 | nvarchar | 5 | 主键,唯一,非空 | |
| 课程名称 | nvarchar | 20 | 非空 |
| 学时 | int | 4 | 非空 |
| 考试或考查 | bit | 1 | 非空 |
| 学分 | float | 4 | 非空 |
4. 教师
| 数据项名 | 数据类型 | 长度 | 完整性约束 | 备注 |
| --- | --- | --- | --- | --- |
| 教师编号 | nvarchar | 5 | 主键,唯一,非空 | |
| 姓名 | nvarchar | 20 | 非空 |
| 性别 | nvarchar | 1 | 非空 |
| 年龄 | int | 4 | 非空 |
| 职称 | nvarchar | 10 | 非空 |
| 电话 | nvarchar | 20 | 非空 |
| 登录密码 | nvarchar | 20 | 非空 |
5. 开课选课情况
| 数据项名 | 数据类型 | 长度 | 完整性约束 | 备注 |
| --- | --- | --- | --- | --- |
| 开课编号 | nvarchar | 15 | 主键,唯一,非空 | |
| 课程编号 | nvarchar | 5 | 外键,非空 |
| 任课教师编号 | nvarchar | 5 | 外键,非空 |
| 开课学年 | nvarchar | 4 | 非空 |
| 开课学期 | bit | 1 | 非空 |
6. 选课情况
| 数据项名 | 数据类型 | 长度 | 完整性约束 | 备注 |
| --- | --- | --- | --- | --- |
| 开课编号 | nvarchar | 15 | 联合主键,也均为外键 | |
| 学号 | nvarchar | 12 |
| 成绩 | int | 4 | |
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
【项目资源】: 包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。 包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】: 所有源码都经过严格测试,可以直接运行。 功能在确认正常工作后才上传。 【适用人群】: 适用于希望学习不同技术领域的小白或进阶学习者。 可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】: 项目具有较高的学习借鉴价值,也可直接拿来修改复刻。 对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】: 有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 鼓励下载和使用,并欢迎大家互相学习,共同进步。
资源推荐
资源详情
资源评论
收起资源包目录
数据库设计课程设计——高校选课管理系统.zip (211个子文件)
.classpath 846B
org.eclipse.wst.common.component 503B
org.eclipse.wst.jsdt.ui.superType.container 49B
ace.min.css 388KB
ace-part2.min.css 126KB
ace-rtl.min.css 114KB
bootstrap.min.css 113KB
ace-skins.min.css 76KB
font-awesome.min.css 27KB
font-awesome.min.css 27KB
bootstrap-datepicker3.min.css 20KB
bootstrap-editable.min.css 17KB
jquery-ui.min.css 15KB
select2.min.css 14KB
ui.jqgrid.min.css 13KB
fullcalendar.min.css 12KB
chosen.min.css 11KB
dropzone.min.css 9KB
ace-ie.min.css 9KB
bootstrap-datetimepicker.min.css 8KB
daterangepicker.min.css 5KB
bootstrap-colorpicker.min.css 4KB
jquery-ui.custom.min.css 3KB
bootstrap-timepicker.min.css 3KB
colorbox.min.css 3KB
jquery.gritter.min.css 2KB
bootstrap-duallistbox.min.css 1KB
bootstrap-multiselect.min.css 1KB
prettify.min.css 532B
fonts.googleapis.com.css 494B
fontawesome-webfont.eot 69KB
glyphicons-halflings-regular.eot 20KB
.gitignore 8B
3.ico 66KB
sqljdbc4.jar 525KB
TeaDao.java 13KB
AdmDao.java 12KB
StuDao.java 10KB
Login.java 7KB
TeaIn.java 3KB
StuChoose.java 3KB
TeaSingle.java 3KB
StuCourse.java 2KB
StudentBean.java 2KB
TeaCourse.java 2KB
StuGrade.java 2KB
TeaSetup.java 2KB
StuSChange.java 2KB
StuProfile.java 2KB
TeaGpa.java 2KB
StuCPassword.java 2KB
TeaAvg.java 2KB
AdmSAdd.java 2KB
AdmCPassword.java 2KB
TeaCPasscode.java 2KB
CourseBean.java 2KB
TeaProfile.java 2KB
AdmTChange.java 2KB
AdmTAdd.java 2KB
AdmCChange.java 2KB
AdmCAdd.java 2KB
AdmCDelete.java 2KB
AdmTDelete.java 2KB
AdmSDelete.java 2KB
AdmStudent.java 2KB
AdmTeacher.java 2KB
AdmCourse.java 1KB
Logout.java 1KB
TeacherBean.java 1KB
BaseDao.java 651B
image-4.jpg 89KB
image-2.jpg 79KB
meteorshower2.jpg 67KB
image-1.jpg 66KB
image-3.jpg 61KB
image-5.jpg 59KB
image-6.jpg 42KB
profile-pic.jpg 10KB
thumb-2.jpg 9KB
thumb-4.jpg 9KB
thumb-3.jpg 9KB
thumb-5.jpg 8KB
pattern.jpg 7KB
thumb-1.jpg 6KB
thumb-6.jpg 5KB
user.jpg 1KB
jquery.jqGrid.min.js 304KB
jquery-ui.min.js 235KB
fullcalendar.min.js 105KB
jquery-ui.custom.min.js 99KB
jquery-1.11.3.min.js 94KB
jquery-2.1.4.min.js 82KB
jquery.dataTables.min.js 81KB
select2.min.js 63KB
ace.min.js 54KB
jquery.sparkline.index.min.js 54KB
holder.min.js 52KB
bootstrap-editable.min.js 50KB
ace-elements.min.js 40KB
moment.min.js 40KB
共 211 条
- 1
- 2
- 3
资源评论
妄北y
- 粉丝: 2w+
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 发那科系统整套梯形图设计 FANUC全套PMC设计 发那科标 准PLC 完美解决方案 ##带中文解释## 内容很全 请仔细看完: 1.刀库程序设计(斗笠 圆盘 夹臂 机械手 伞型 都包
- stm32 gd32爱玛电动车控制器资料 电动车控制器原理图、PCB和程序 大厂成熟电机foc控制 送eg89m52的原理图和pcb
- 基于Go语言的现代化开源K8s面板——1Panel官方出品KubePi设计源码
- 基于JavaScript的Sewise Player网页HTML5视频播放器设计源码
- 小神农V7(修复眼镜).zip
- 基于Vue框架的银行科技岗AI云账户系统前端设计源码
- Screenshot_2025-01-15-00-13-41-471_com.tencent.mtt.jpg
- Screenshot_2025-01-15-00-08-47-906_com.tencent.mobileqq.jpg
- 250467c518b0a66217a647d11a6a9c831736870765675.jpg
- 基于Tcl语言的GNU TeXmacs插件集合设计源码
- Screenshot_2025-01-15-00-04-33-283_com.kuaishou.nebula.jpg
- 基于Vue框架的easy-send局域网文本文件共享小工具设计源码
- 基于JavaScript和微信小程序技术的钓场信息预约与管理小程序设计源码
- PSO-RBF和RBF粒子群优化径向基神经网络多输入多输出预测(Matlab完整源码和数据)
- 三菱fx3u+485ADP-MB与3台台达变频器modbus通讯程序 功能:通过三菱fx3u 485ADP-MB板对3台台达变频器进行modbus通讯,实现频率设定,启停控制,输出频率读取,输出电压读
- 除尘程序 写的FB块了,可以直接调用
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功