学生选课管理系统(数据库课程设计)

2、统人机界面设计更加合理、人性化,用户操作简单方便。数据库的安全性更高,对用户访问权限进行了严格控制。数据存取速度更快,使用年限更长。可以很好的满足高校公开课学生选课的要求,极大的提高了学校的工作效率。关键字:学生选课管理系统;分析;设计第36页目录一、概述21.1设计背景251.2设计目的271.3设计内容31二、需求分析142.1功能分析52.2工作流图42.3数据流图52.4数据字典10三、概念模型设计133.1实体之间的联系133.2E-R图14四、逻辑设计184.1概念模型向关系模型的转换184.2概念模型的优化19五、源代码及查询截图205.1数据库的存

4、高学校的工作效率。对于系统的本身而言,应该具有较高的实用性、安全性。能够极大的满足学生选课,以及学校对选课信息的管理。1.3设计内容调查学校教务处,设计用于管理全校学生选修课活动的系统。主要功能有:全校选修计划课程管理;全校选修开课课程管理;全校学生选课管理;全校选修课成绩管理;能够实现课程的查询,修改与删除功能。二、需求分析2.1功能分析主要功能:教师和学生登陆系统的帐号和密码,初始都分别为教师和学号,登陆后密码可以修改。其中教师的职位可以是管理员。管理员和非管理员的老师及学生对系统的操作具有不同的权限。管理员登陆系统,对学生选课情况进行管理,包括发布选课信息,对学生的选

5、课情况进行查看。管理员还可以对授课老师的信息进行增加、删除、修改、查询。教师登陆系统,能查看自己的个人信息,及所授课的班级的所有学生的本门课程的成绩信息,并能进行增加和修改。学生登陆系统,能进行选课,查看管理员发布的选课信息,自己的选课情况,本人的基本信息,以及课程的成绩。系统自动分配学生选课后的临时班级。性能要求:管理员发布的信息、学生选课的信息以及管理员和学生对系统操作的信息必须及时的反映在本系统上,且无差错。输入要求:具有很好的容错性和兼容性输出要求:应迅速、准确、实时2.2工作流图系统需求:用户的需求具体体现在选课信息和用户信息的提供、保存、更新和查询的方面。这就要求数据库的设计必须合

6、理,使之能够充分满足各种信息的输入和输出,保证数据存储的可靠性,并且能够快速取出和存入。而前台显示部分,应具有人性化的界面,方便用户操作。因各个学校的实际情况不同,系统应该具有兼容性。例如:一些学校学生人数较多,同时登陆系统,系统承载的负荷就很大。系统需要同时处理很大的数据量,这时系统不会因此崩溃。系统还应该具有较强的安全性,保证身份不同的用户,不能越权操作。非合法用户不能对数据进行操作。功能需求:通过系统功能的分析,结合需求分析员在各大高校实地考查,调查的对象涵盖了,学校的教职工、在校师生。特别是对已经运行了与本系统同类产品的学校的师生使用选课管理系统心得体会进行了分析,总结出如下的需求信息

7、:(1)学生的需求:能进行选课,查看管理员发布的选课信息,自己的选课情况,本人的基本信息,课程的成绩;(2)教师的需求:能查看自己的个人信息,及所授课的班级的所有学生的本门课程的成绩信息,并能进行增加和修改;(3)管理员的需求:对学生选课情况进行管理,包括发布选课信息,对学生的选课情况进行查看。管理员还可以对授课老师的信息进行管理。2.3数据流图系统顶层图:根据系统主要信息的处理功能,整个系统可以看作登陆管理,用户选课管理两个部分。从而得出了学生选课管理系统的顶层图如下所示:D2选课信息库学生选课管理系统顶层图F1用户D1用户信息库P1登陆管理P2用户选课管理F2F3F4F5F6F7F8F

8、9F10注:F1:用户登陆信息F2:用户注册信息F3:用户基本信息F4:用户基本信息F5:学生选课信息清单F6:学生选课信息F7:登陆错误信息F8:系统反馈用户信息F9:用户信息清单F10:修改密码后的用户信息数据流程图一层分解图(1)用户登陆管理。用户在登陆时,系统会进行判断。用户一共有三种类型,分别是学生,教师和管理员。其中,一部分教师是管理员。在登陆的只有学生和教师两种类型,管理员的身份由系统自行判断。在判定时需要查询用户信息库。用户信息库,包括学生注册信息,教师注册信息,管理员信息等。学生选课管理系统一层分解图登陆管理,如下图所示:学生选课管理系统一层分解图登陆管理F

9、1用户D1用户信息库F3F2.1F2.2P1.1用户身份判断F2.3P1.2修改密码F1F10P2用户操作管理F7.1F7.2注:F2.1:学生登陆信息F2.2:教师登陆信息F2.3:管理员登陆信息F7.1:用户身份信息F7.2:修改密码的错误信息(2)用户操作管理。在登陆管理进行判断后,发送学生登陆信息,教师登陆信息,管理员登陆信息的其中一种。根据用户身份信息的不同,进入不同的管理界面,相应的操作的功能,权限都有所不同。如下图所示:P2.1学生管理学生D1用户信息库D2选课信息库F2.1F8.1F3.1F6.1F5.1学生选课管理系统一层分解图学生管理注:F3.1:原始学生信息F5

10、.1:学生更新后的选课信F6.1:学生查询的选课信息F8.1:学生操作后返回的信息P2.2教师管理教师D1用户信息库D2选课信息库F2.2F8.2F3.2F6.2F5.2学生选课管理系统一层分解图教师管理注:F3.2:原始教师信息5.2:教师更新后的选课信息F6.2:教师查询的选课信息F8.1:教师操作后返回的信息P2.3管理员管理管理员D1用户信息库D2选课信息库F2.3F8.3F3.3F6.3F5.3F9.1学生选课管理系统一层分解图管理员管理注:F3.3:原始管理员信息F9.1更新后的用户信息F6.3:管理员查询的选课信息F8.1:管理员操作后返回的信息F5.3:管理员更新后

11、的选课信息数据流程图二层分解图(1)学生管理。将P2.1进行分解,学生管理包括,查看选课信息和个人信息,进行选课、重新选课。学生选课管理系统二层分解图学生管理如下图所示:学生选课管理系统二层分解图学生管理D1用户信息库F8.1F5.1.1P2.1.1个人信息查询P2.1.2选课信息查询P2.1.3增加选课P2.1.4删除选课D2选课信息库F5.1.2F6.1F2.1F2.1F2.1F2.1学生F8.1F8.1F8.1F3.1F3.1注:F3.1:学生个人信息F5.1.1:增加后的选课信息F5.1.2:删除后的选课信息(2)教师管理。将P2.2进行分解,教师管理包括,查看选课信息和个人信息,

12、填写学生的成绩。学生选课管理系统二层分解图学生管理如下图所示:学生选课管理系统二层分解图教师管理D1用户信息库F3.2.1P2.2.1个人信息查询P2.2.3查询选课信息P2.2.4填写学生成绩D2选课信息库F5.2.2F6.2F2.2F8.2F2.2教师F8.2F8.2F8.2注:F3.2.1:教师个人信息F3.2.2:学生个人信息F5.2.2:增加后的学生成绩信息F5.2.3:修改后的学生成绩信息(3)教师管理。将P2.3进行分解,管理员管理包括,1.管理学生信息,包括对学生信息的查询、增加,修改,删除;2.管理教师信息,包括对教师信息的查询、增加,修改,删除;3.选课信息管理,包括

13、发布选课信息,增加,修改,删除选课课程等。学生管理系统二层分解图学生管理如下图所示:学生选课管理系统二层分解图管理员管理D1用户信息库P2.2.3管理学生信息P2.2.3管理教师信息F8.3F2.3F2.3F3.3.1F9.1.1F9.1.2F3.3.2D2选课信息库P2.2.3管理课程信息F2.3F3.3.3F9.1.3P2.2.3管理班级信息F2.3F3.3.3F9.1.4管理员F8.3F8.3注:F3.3.1:原始学生信息F3.3.2:原始教师信息F3.3.3:原始课程信息F3.3.4:原始教室信息F9.1.1:修改后学生信息F9.1.2:修改后的教师信息F9.1.3:修改后

21、号,成绩)(2)学生班级联系概念模型向关系模型的转化学生表(学号,姓名,性别,年龄,系部,密码)临时班级表(班级号,班级名,人数,地点)学生班级关系表(学生号,班级号)4.2概念模型的优化确定范式级别根据上述分析所归结出来的数据依赖的种类和在本系统实际的开发过程中,需要涉及多表的查询及表的修改和删除,且存在多值依赖的实际情况下,其关系模式应达到BCNF。实施规范化处理由于学生选课联系的关系模式、学生班级的关系模式和教师管理员联系的关系模式已经不存非平凡且非函数依赖额多值依赖,所以在这里不需要做处理。各个关系模式的函数依赖集如下:教师课程联系:F=教师号教师名,教师号性别,教师号年龄,教

24、据库的存储结构通过需求分析,概要设计和逻辑设计流程得到本系统的数据库结构。数据库的表设计进一步确定上一章逻辑设计中设计好的关系模式中各个数据项的类型和长度,将每个关系转换为数据库中的二维表格,并确定了各个表的主键和外键,得到以下表结构:学生表字段名称字段含义数据类型及长度约束默认值Sno学号varchar(15)主键Sname姓名varchar(15)非空Ssex性别varchar(2)男Sage年龄int0或0或=0或=0或=100学生临时班级关系表字段名称字段含义数据类型及长度约束默认值Sno学号varchar(15)主键,外键Csno班级号varchar(15)主键,外键教师课程关系

25、表字段名称字段含义数据类型及长度约束默认值Tno教师号varchar(15)主键,外键Cno课程号varchar(15)外键教师临时班级关系表字段名称字段含义数据类型及长度约束默认值Csno班级号varchar(15)主键,外键Tno教师号varchar(15)外键课程临时班级关系表字段名称字段含义数据类型及长度约束默认值Csno班级号varchar(15)主键,外键Cno课程号varchar(15)外键数据的存放位置的设计根据本系统的数据库的使用情况,主数据文件信息量大且使用频繁将其存储在高速存储器(硬盘)上。将表和表上的索引存储在不同的磁盘上以便提高查询效率,同时这样可以提高物理I/O读写

26、效率。数据库备份文件和日志文件等文件因为使用频率小而且数据量非常大,存放在低速存储设备上。关系模式的存取方法关系模式采用索引存取方法与聚簇存取方法共用。数据库安全性在数据库中,由于用户的身份不同,对数据库的访问权限也就不同。管理员几乎能够对所有的用户自定义表进行操作(包括增、删、改、查)。但根据实际情况,学生一旦选课成功,管理员是无法对其选课信息进行修改。同样,学生与教师对数据库的访问权限就更加小了。这样也就保证了数据库安全性。另外一方面,数据库表中,各表之间根据实体完整性、参照完整性、域完整性设置了各种约束。一旦一张表被非法操作,如删除,修改。也会影响其它的表。所以这就要求DBA定时进行备份

27、,防止当数据丢失时,引起不可估量的损失。5.2实现根据概要设计和逻辑设计的结果,在计算机上建立实际的数据库结构,导入数据进行程序调试。数据库的实现(1)创建数据库StudentcreatedatabaseStudenton(name=学生选课管理库,filename=E:db学生选课管理库.mdf,size=5,maxsize=15,filegrowth=2)视图的实现(1)创建查询可供选择课程的视图createviewcinfoasselectame,course.ccredit,class.address,course.ctime,course.cbegintime,cour

28、se.cendtime,class.number,o,class.csname,class.csnofromcourse,tc,class,ccwhereo=oando=oandclass.csno=cc.csno(2)创建教师信息视图createviewtinfoasselectteacher.tno,teacher.tname,teacher.tsex,teacher.tage,status,amefromteacher,course,tcwhereteacher.tno=tc.tnoando=o;(3)创建教师教师授课视图createviewtcinfoa

29、sselectteacher.tno,teacher.tname,o,amefromteacher,course,tcwhereteacher.tno=tc.tnoando=o(4)学生的选课信息视图createviewscinfoasselectstudent.sname,ame,course.ccredit,course.ctime,course.cbegintime,course.cendtime,student.snofromstudent,course,scwherestudent.sno=sc.snoando=o(5)教师任教情况createviewc

30、tinfoasselectteacher.tno,teacher.tname,class.csno,class.csnamefromclass,teacher,ctwhereclass.csno=ct.csnoandct.tno=teacher.tno(6)教师课程班级之间关系的视图createviewtcsasselecto,tc.tno,cc.csnofromcc,tcwhereo=o(7)学生课程班级之间的关系的视图createviewsccasselectscs.sno,scs.csno,ofromscs,ccwherescs.csno=cc.

31、csnoselect*fromsc(8)学生的已选课程的成绩createviewscgradeasselectscc.csno,class.csname,scc.sno,student.sname,o,ame,student.sclass,sc.gradefromscc,course,class,student,scwhereo=oandscc.csno=class.csnoandscc.sno=student.snoandscc.sno=sc.snoando=o(9)创建查询可供选择课程的视图createviewcinfoasselectcourse.

32、Cname,course.Ccredit,class.address,course.CTime,course.Cbegintime,course.Cendtime,class.number,course.Cno,class.CSname,class.CSno,teacher.Tnamefromtcs,teacher,class,coursewheretcs.tno=teacher.tnoandclass.csno=tcs.csnoando=o(10)创建查询已选可供选择的课程的视图createviewscinfoasselectstudent.sno,student.s

33、name,ame,course.ccredit,course.ctime,course.cbegintime,course.cendtime,o,sc.gradefromsc,student,coursewheresc.sno=student.snoando=o5.3人机界面设计用户登陆界面用户登陆界面是每一个用户,在登陆本系统时出现的界面,如要用户输入用户名、密码和验证码,以及确定用户身份。其界面如下图:用户登陆界面学生选课管理界面学生登陆成功后,进入学生管理模块,其界面如下:学生选课管理界面教师管理界面教师成功登陆系统后,教师管理界面如下图:教师管理界面管理员管理界面管

34、理员成功登陆系统后,管理员管理模块界面如下图:管理员管理界面5.4系统测试用户登陆测试(1)登陆信息验证测试。有一名用户,用户名为:S01001密码为:hongfeng,其身份为学生。当其在登陆界面所有的信息输入正确时将进入如图6-2的界面。如果该用户输入的为abcdef,系统就会提示用户出错,出错界面如下:登陆错误提示1(2)如果用户在输入登陆信息时不符合规范,将弹出错误提示。如:验证码要求输入4位数字,现在输入4位字符或3位数字,将会弹出一下提示框:登陆错误提示2学生选课管理测试(1)学生选课测试。一名学生用户,登陆系统后,进入图6-2界面,选择学生选课,进行选课。如下图:课程安

35、排(2)该用户选择了考研数学和汽车概论两门课程,点击选课按钮,系统提示选课成功。选课成功后,返回课程安排界面,如下图:选课后的课程安排(3)课程安排界面,点击已选课程,进入如下界面:已选课程教师管理测试(1)一名教师,登陆系统成功后,进入如图6-3界面,点击教师授课信息,显示该名教师临1101班任教,如下图:教师授课班级信息(2)在图6-7-1界面,点击查看临1101班的信息,进入如下界面:修改前的学生成绩(3)在界面点击修改,将“萧萧”的成绩修改成90,修改后的界面如下:修改后的学生成绩管理员管理测试(1)“王军”是本系统唯一一名管理员,登陆系统后,进入图6-4界面,下面对其对学生的

THE END
1.C#怎么实现简单学生信息管理系统编程语言这篇文章将为大家详细讲解有关C#怎么实现简单学生信息管理系统,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 具体内容如下 一、运行环境windows,使用vs编译软件 二、主要功能 登录、添加学生信息、修改学生信息、删除学生信息、查询学生信息 https://www.yisu.com/jc/185585.html
2.毕业论文(设计)毕业论文(设计)--基于C#的学生成绩管理系统的设计与实现.docx,目录1引言41.1系统开发背景41.2系统开发意义与设计目的41.2.1开发意义41.2.2设计目的41.3项目风险41.3.1项目进度41.3.2项目需求不明确41.4本研究需要解决的问题52开发工具和开发技术介绍52.1 Microsoft Visuahttps://max.book118.com/html/2018/0514/166238060.shtm
3.C#语言实现《学生成绩管理系统》c#学生成绩管理系统创建一个VS项目连接数据库,项目为学生成绩管理系统,其中包含登录、开课情况查询、学生成绩查询、学生信息维护、学生成绩维护以及帮助等主要内容。 分为两端:因用户权限不同,分别为普通用户端以及管理员端。 二、项目平台 PC、VS2012、SQLServer 2008R2 三、主要代码以及运行截图演示 https://blog.csdn.net/weixin_39049040/article/details/78482720
4.C++实现学生信息管理系统(带有酷炫界面)学生选课和成绩管理是高等学校教务管理的重要组成部分,主要包括教师管理学生成绩梦块、学生选课模块和系统管理模块。每门课程包括学分、学时、课程名字以及课程性质(必传和选修)等信息。每位教师可以教授若干门课程,并负责学生成绩的录入、删除、查找及传改、成绩的统计分析等等。教师的信息还包括姓名和D。学生根据自己的https://zhuanlan.zhihu.com/p/602353664
5.分享一个基于.net的学生信息管理系统C#高校教务管理系统(源码同时,教育部门对学生数据的实时性、准确性和安全性提出了更高的要求。在这种背景下,开发一个全面、高效的学生信息管理系统成为了教育机构的迫切需求。这个系统不仅要解决学生基本信息的录入和管理问题,还需要实现学习成绩、考勤记录、课程选择等多方面数据的集成管理,以及支持各级教育管理部门的数据统计和分析需求。https://www.jianshu.com/p/ead3c46a838f
6.C#项目实战——三层架构之学生信息管理系统本文将介绍如何使用C#和三层架构来构建一个学生信息管理系统。通过这个项目实战,你将学到如何设计和开发一个具有良好可扩展性和可维护性的应用程序。 三层架构的概念 三层架构是一种常见的软件架构模式,将一个应用程序划分为三个主要的层次:表现层、业务逻辑层和数据访问层。每个层次都有其特定的功能和责任,使得应用https://blog.51cto.com/u_16175478/6933585
7.成绩管理系统(C#课程设计)最新版本源码是一个成绩管理系统源码,分为教师登录和学生登录,有不同的权限 三、菜单功能 教师管理 1、学生信息管理:添加学生;删除学生;查看所有学生信息;评价 2、学生成绩管理:录入成绩;修改成绩 3、学生成绩统计:各科平均成绩;成绩排名 4、退出 学生管理 1、查看成绩 2、老师寄语 3、退出 四、注意事项 1、开发环境https://m.onlinedown.net/soft/1138645.htm/
8.C#ASP.NETCore开发学生信息管理系统(一)C# ASP.NET Core开发学生信息管理系统(一) 随着技术的进步,跨平台开发已经成为了标配,在此大背景下,ASP.NET Core也应运而生。本文主要利用ASP.NET Core开发一个学生管理系统为例,简述ASP.NET Core开发的常见知识点,仅供学习分享使用,如有不足之处,还请指正。https://developer.aliyun.com/article/1287745
9.毕业生就业管理系统的设计与实现AET摘要:采用Browser/Server技术模式,设计了毕业生就业管理系统。前台使用ASP.NET开发技术,后台使用Microsoft SQL Server 2008数据库开发技术。系统由学生子系统和管理员子系统两大模块组成。 关键词:毕业生;就业信息管理;B/S模式;信息平台 随着计算机、网络与通信技术的快速发展,信息化已成为当今社会不可阻挡的发展趋势,信http://m.chinaaet.com/article/211977
10.学生信息管理系统ER图,数据流图用例图以及用例说明(部分)软件学生信息管理系统,包含有全部的详细的ER图,数据流图的简单visio文件,以及部分的staruml用例图和不完全的用例说明的ml文件。 我们的软件工程作业(很水),我随手上传的,大家可以救个急。 ps:初到CSDN,用了一些大佬的数据流图照着做的,应付作业 软件工程作业 学生信息管理系统 ER图 数据流图2020-12-08 上传大小:https://www.iteye.com/resource/m0_45272112-13585493
11.C语言学生管理系统源码分享。C语言系列:学生管理系统一C语言学生管理系统源码分享。C语言系列:学生管理系统|||一个课程设计,利用C语言编写学生管理系统其中功能含有以菜单形式显示、添加与删除学生、按学号或姓名查找学生、修改学生信息、按照姓名或平均分排序、加载文件、保存文件与显示全部学生信息等 - C语言编程于2023080https://www.douyin.com/note/7263374698950462781
12.2023届电子信息与计算机工程系优秀毕业设计作品毕业设计本家政服务管理系统基于B/S结构,采用ASP.NET结合C#技术,后台数据库采用SQL Server数据库,不仅实现了家政服务的基础性信息得到有效管理,数据信息的安全也有了保障,同时极大地方便了家政服务员工与客户之间的信息交流,使其信息化、规范化地实现系统资源的全局共享。https://www.cdutetc.cn/c/4c068411-751b-4f12-b725-f69e34c010a3.html