学生选课信息管理系统数据库设计.docx
《学生选课信息管理系统数据库设计.docx》由会员分享,可在线阅读,更多相关《学生选课信息管理系统数据库设计.docx(19页珍藏版)》请在冰豆网上搜索。
学生选课信息管理系统数据库设计
学生选课信息管理系统
一、系统可行性分析
在系统开发过程中进行可行性分析,对于保证资源的合理使用,避免浪费和一些不必要的失败,都是十分重要的。
1.目标和方案的可行性:
如果采用人工操作的方式,不仅操作不方便,耗费人力,而且还容易出现错误。
所以当前迫切需要一个计算机化的管理信息系统。
开发这个系统,能更好地满足学校要求,使学校的各种信息管理实现无纸化,高效化。
2.技术方面的可行性:
本系统是用access结合SqlServer数据库来开发的一个信息管理软件。
Access在数据库方面的特长显得尤为突出:
适用于多种数据库结构,结合客户端的html能够创建出完美漂亮且高效的软件系统。
3.管理方面的可行性:
作为学校教务信息管理系统之一的选课系统,对它的管理也是很方便的,只需要先将系统配置运行起来,然后分配好系统的三个主要角色,就可以投入实际的院校中进行使用。
根据以上几方面的可行性分析,可以得出结论:
开发该学生选课管理系统是可以进行的。
二、系统需求分析
本程序的设计任务就是制作一个可以用于学生选课管理的系统,主要可以进行对本系统、数据的管理、数据查询、常务操作、常用工具、数据库管理和帮助等功能。
具体来说就是可以通过管理功能对本系统用户进行用户添加删除以及密码修改和权限的管理;还可以通过数据管理功能对教师、学生、系部、课程、成绩、教室等信息进行添加、修改和删除等具体的操作;再者,可以通过数据查询功能对教师、学生、系部、课程、成绩、教室等信息的查询;同时本程序还引入常用工具功能,可以在本程序中使用计算器、Word、记事本、Excel、SQLServer和Web等常用工具;最后本程序还加入了数据库的备份、数据库的还原、数据库的压缩、数据的导入和数据的导出等功能方便于数据的整理的存储。
教师在本系统的功能:
(1)教师信息管理,包括教师个人的基本情况和任课情况;
(2)根据学校教务处所排课进行班级数及人数的统计,然后根据统计结果进行项目及班数的设定查询学生选课情况、自己任课情况、获取自己所担任课程分班表;
(3)录入及修改成绩学生信息管理,
学生在本系统的功能:
(1)查询本人信息、
(2)教师任课信息、选课、选课信息查询、
(3)成绩查询。
本程序所能达到的功能是:
用户的添加删除,数据的添加修改删除,数据的查询,常用工具的使用,数据库的维护等功能。
三、数据库详细设计
1、系统逻辑结构、概念结构设计
数据库逻辑设计就是将E—R图转换为关系模型的过程,即将所有实体和关系转换成一系列的关系模式。
转换过程中常见规则有:
(1)对于“学生”、“成绩”和两者之间的关系,就可以根据一对多的联系转换成两个关系模式。
学生(学号,姓名,性别,出生年月,政治面貌,系别,四级通过)
成绩(学号,课程编号,课程名称,成绩)
(2)对于“学生”、“课程”和它们之间的“选修”关系就可以规则多对多的关系转换成三个关系模式。
学生(学号,姓名,性别,出生年月,政治面貌,系别,四级通过)
课程(课程编号,课程名称,课程分类,学分,教师编号,教室信息,限选人数,已选人数)
(3)剩下的关系转换成下面三个关系模式:
教师(教师编号,姓名,性别,年龄,学历,职称,毕业院校,健康状况)
教室(教室号,管理员姓名,管理员联系方式,可容纳人数,空闲时间)
2、主图设计
本系统的数据库实体主要有“学生”、“教师”、“教室”、“课程”、“信息”等。
其中“教师”与“课程”存在“开设”联系,并且一个教师可以开设N门课程,即“教师”与“课程”之间是一对多的关系。
同样“学生”与“成绩”也存在一对多的关系。
一个学生可以学习N门课程,一门课程可以有M个学生学习,即“学生”与“课程”之间是多对多的关系。
同样“学生”与“成绩”之间也是多对多的关系。
整个数据库可以用一个E-R图表示,如图:
3、E-R实体图设计
根据需求分析的结果,设计出“学生选课信息系统“数据库的E-R图,该E-R图应该共有5个实体:
学生信息实体、课程信息实体、成绩信息实体、教室信息实体、教师实体,和1个选课信息E-R图。
分别如图所示。
成绩信息
学号
课程编号
成绩
课程名称
选课信息表
课程编号
教师编号
学号
四、数据库物理实现
1、建立空数据库
经过数据库系统分析和逻辑设计后,数据库的结构已经非常清晰,剩下的就是用一种数据库软件实现这样的结构。
本系统中数据库采用MicrosoftAccess2003作为数据库。
首先我们在MicrosoftAccess2003的“管理器中”创建一个数据库,我们命名为“USER”.
2、建立表
本系统共设计了6张表:
学生信息表
课程信息表
教师信息表
教室信息表
成绩信息表
选课信息表
学生信息表:
字段名称
数据类型
字段大小
主键
学号
文本
8
是
姓名
文本
4
否
性别
文本
1
否
出生年月
日期/时间
否
政治面貌
文本
2
否
所在系别
文本
15
否
四级通过
是/否
否
课程信息表:
字段名称
数据类型
字段大小
主键
课程编号
文本
3
是
课程名称
文本
10
否
课程分类
文本
3
否
学分
文本
1
否
教师编号
文本
10
否
教室信息
文本
3
否
限选人数
文本
3
否
已选人数
文本
3
否
教师信息表
字段名称
数据类型
字段大小
主键
教师编号
文本
5
是
姓名
文本
4
否
性别
文本
1
否
年龄
数字
整型
否
学历
文本
2
否
职称
文本
3
否
毕业院校
文本
20
否
健康状况
文本
10
否
教室信息表:
字段名称
字段类型
字段大小
主键
教室号
文本
3
是
管理员姓名
文本
3
否
管理员联系方式
文本
11
否
可容纳人数
文本
3
否
空闲时间
文本
10
否
成绩信息表:
字段名称
字段类型
字段大小
主键
学号
文本
8
是
课程编号
文本
3
否
课程名称
文本
10
否
成绩
数字
单精度型
否
选课信息表:
字段名称
字段类型
字段大小
主键
课程编号
文本
3
是
教师编号
文本
5
否
学号
文本
8
否
选中USER数据库,向数据库对象的表中添加以上6个表。
可以通过表设计器创建表,使用向导创建表,通过输入数据创建表。
本程序中通过表设计器创建的学生表过程如下:
1)、进入表的设计视图。
(1)、在Access中打开“学生选课信息管理系统”数据库。
(2)、在数据库窗口中选定“表”对象,双击“使用设计器创建表”。
(3)、输入表的字段名称、数据类型等内容。
单击“字段名称”列的第一行,将光标放在该字段中,向此文本框中输入“学号”,然后单击该行的数据类型,在弹出的下拉列表框中选择类型“文本”型,在“常规”选项卡中设置“字段大小”为8.
用同样的方法依次输入各自段的名称,并在“数据类型”列表框中选择所需要的数据类型及相应的属性值,并建立“学生信息表”结构。
2)、使用“查阅向导”定义政治面貌字段
(1)、选定“政治面貌”字段,在“数据类型”下拉列表中单击“查阅向导”,弹出“查阅向导”对话框之一。
(2)、选择“自行键入所需的值”单选按钮,单击“下一步”按钮,进入“查阅向导”对话框之二。
(3)、输入“党员”“团员”“群众”,输入完成之后单击“下一步”按钮,进入“查阅向导”对话框之三。
(4)、定义查阅列标签名为“政治面貌”,单击“完成”按钮结束操作。
3)、设置主键
定义完全部字段后,单击“学号”字段行的字段选定区,然后单击工具栏中的“主键”按钮,定义“学号”字段为主关键字。
4)、保存文件
选择“文件”→“保存”命令,然后单击“确定”按钮完成操作。
学生信息表保存结果如下:
学生信息表建立完毕。
接着根据以上类似的方法相继建立学生信息表、课程信息表、教师信息表、选课信息表、成绩信息表、教室信息表。
至此表对象已建立完毕。
3、建立表之间的关系
根据表之间相对应字段的关系,建立表之间的关系。
表之间的关系如图所示:
建立的过程如下:
(1)、打开“学生选课信息管理系统”数据库。
(2)、定义学生信息表中的“学号”字段为主键,课程信息表中的“课程编号”字段为主键,教师信息表中的“教师编号”字段为主键,成绩信息表中的“学号”字段为主键,教室信息表中的“教室号”字段为主键。
(3)、关闭所有的数据表。
(4)、选择“工具”→“关系”命令,弹出“显示表”对话框。
(5)、在“显示表”对话框中,分别选定学生信息表、课程信息表、教师信息表、选课信息表、成绩信息表、教室信息表,通过单击“添加”按钮将它们添加到“关系”窗口中。
单击关闭按钮,关闭显示表对话框。
(6)、在“关系”窗口中拖动“学生信息”表的“学号”字段到“成绩信息”表的“学号”字段,释放鼠标,即可弹出“编辑关系”对话框。
(7)、在“编辑关系”对话框中,可根据需要选择“实施参照完整性”、“级联更新相关字段”、“级联删除相关记录”复选框,在此选定三个复选框,然后单击“创建按钮”,创建一对多的关系,即“学生信息”表中一条记录对应“成绩信息”表中的多条记录。
(8)、同理,相继建立:
学生信息表和选课信息表之间的关系;
课程信息表和选课信息表之间的关系;
课程信息表和成绩信息表之间的关系;
教师信息表和选课信息表之间的关系;
教师信息表和课程信息表之间的关系;
教室信息表和课程信息表之间的关系。
(9)、单击“关闭”按钮,关闭“关系”窗口,系统弹出保存消息框。
单击“是”按钮保存此布局,将创建的关系保存在数据库中。
保存结果如上图所示。
4、建立查询
可以在查询向导中、设计视图中,根据已有表建立查询。
依次建立单参数查询,多参数查询,考试成绩为前5%的信息查询,课程信息查询,没有开设课程老师查询,男女学生人数查询,统计不同学分的课程数查询,学历为硕士的讲师查询,学历为学士的讲师查询,学生的选课信息交叉表查询,学生选课成绩查询,周四上午空闲的教室查询。
共建立13个查询。
如图所示:
仅以在查询向导中建立“没有开设课程老师”表为例说明建立查询的一般步骤:
(1)、在学生选课信息管理数据库窗口中的“对象”列表中选择“查询”选项。
(2)、单击工具栏上的“新建”按钮,弹出“新建查询”对话框。
(3)、选择“查找不匹配项查询向导”,单击“确定”按钮。
(4)、选择“查找不匹配项查询向导”对话框,选择教师表。
(5)、单击“下一步”按钮,选择开课教师表。
(6)、单击“下一步”按钮,选择“教师编号”字段,然后单击“〈=〉”按钮.
(7)、单击“下一步”按钮,选择查询结果中所需的字段,选择“教师编号”、“姓名”、“学历”、“职称”。
(8)、单击“下一步”按钮,在打开的对话框中输入查询名称“没有开设课程老师”,选择查看结果按钮,单击完成按钮。
可以看到“没有开设课程老师”信息的查询结果:
5、建立窗体
可以在设计器中、在窗体向导中建立窗体。
一共建立10个窗体。
分别为:
成绩明细,教师信息,教室信息,课程信息,切换面板,学生成绩,系统登录,选课信息子窗体,学生信息,学生选课窗体。
其中窗体中主切换面板如图所示:
其中仅以学生成绩信息窗体为例说明使用向导创建窗体的一般步骤:
(1)、打开“学生选课信息管理”数据库。
(2)、建立表间关系。
选择“工具”→“关系”命令,弹出“关系”对话框。
建立“学生信息”表与“成绩信息”表之间的一对多的关系。
(3)、启动窗体向导。
在数据库窗口中选定“窗体”对象,然后双击内容窗格中的“使用窗体向导创建窗体”,弹出窗体向导对话框之一。
(4)、设置窗体上的数据源。
首先,选择学生信息表的相关字段。
在“表/查询”下拉列表中选择“表:
学生信息”,然后在“可用字段”列表框中选择“学号”,单击“>”按钮,选择“姓名”,单击“>”按钮,选择“专业”,单击“>”按钮。
接着,选择成绩信息表的相关字段。
在“表/查询”下拉列表中选择“表:
成绩信息”,在“可用字段”列表框中选择“课程号”,单击“>”按钮。
以此类推,将“教师编号”,“成绩”字段添加到“选定的字段”列表框中。
单击“下一步”按钮,弹出窗体向导对话框之二。
(5)、设置查看数据的方式。
默认选择查看数据方式为“通过学生”,默认选中“带有子窗体的窗体”单选按钮,单击“下一步”按钮,弹出窗体向导对话框之三。
(6)、选择子窗体使用的布局为“数据表”样式,然后单击“下一步”按钮,弹出窗体向导对话框之四。
之四。
选择窗体的样式为“蓝图”,单击“下一步”按钮,弹出窗体向导对话框之五。
(7)、指低昂窗体的标题。
输入主窗体标题为“学生成绩”,输入子窗体标题为“成绩明细”,单击“完成”按钮。
至此学生成成绩主/子窗体创建完毕。
“学生成绩信息窗体”如下表所示:
其余每个窗体依次建立,建立结果格式大致如上图所示。
6、建立报表
报表可以在设计视图中、或在向导中建立。
一共建立6个报表:
成绩信息报表,教师信息报表,教室信息报表,课程信息报表,选课信息报表,学生信息报表。
如图所示:
其中每个报表的格式如下图的成绩信息报表所示:
7、建立页
在设计视图中建立页。
8、建立宏
建立宏
9、建立模块
建立模块
四、实习心得体会
我们的共同心得体会
经过本星期的设计,我们选择的课题《学生选课信息管理系统》基本完成。
其功能符合学生管理、教师管理、选课管理、成绩管理等要求。
通过设计我们学到了许多知识,这也是在大学里第二次制作计算机课题项目,虽然在设计过程中遇到了许多困难,但在老师和同学们的帮助下一一克服了。
通过不断的发现问题,解决问题和总结问题,使我们小组的课程设计能力不断得到提高,同时也得到了宝贵的经验。
谢谢老师和同学们!
小组成员实习心得体会
注:
在附页中,本组共五个成员每人一份共五份。