您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 学生选课系统设计报告
大理学院数学与计算机学院《数据库系统设计》课程设计报告班级:2012级计算机科学与技术1班学号:201211514姓名:刘秀珍系统名称:学生选课系统总分:实验报告内容及撰写要求:一、需求分析程序的主要功能描述,可以用文字、框图、用例等方式。参考《数据库系统设计任务书》附录中的内容来进行设计报告的撰写。主要应当包含分析的过程及分析后得到的数据流图和数据字典。二、数据库设计2.1数据库概念设计实体关系模型设计,创建分ER图和总体ER图,并描述总体E-R图合并时的问题解决。2.2数据库的逻辑设计根据概念设计结果,创建数据库的逻辑模型,建立在具体DBMS下(SQLSERVER2005)的表结构,并根据规范化理论对表结构进行优化调整。同时,根据应用需求,创建数据库系统所需的外模式(视图)、模式和内模式(索引)等,此外,应当根据需求,建立数据完整性约束(实体完整性,参照完整性和用户自定义完整性)。三、系统实现3.1数据库访问1)数据访问类及实现代码2)SQL语句3.2业务逻辑层类及代码描述业务流程、数据处理功能的模块代码3.3表示层的实现可以用界面截图及其实现类及核心代码描述四、总结一、需求分析1.1背景全校性选修课开设的目的在于扩大学生的知识面、加强学生素质教育、培养复合型高级人才,具有不可替代的重要性。随着教育改革的不断深入和素质教育的加强,学分制的实施,选修课在一个学生的培养计划中占的比重将越来越大。网上选课系统的出现使同学们能够更加自主、便捷、准确的进行选课。但是,由于一般高校中的学生都比较多,因此带来了诸多如信息管理等问题,鉴于需要将学生信息、选课信息等信息数字化以便于管理维护,我们便想到了利用数据库能够比较良好地解决此类问题,由此下面我将设计出一个学生选课系统以供参考。1.2系统设计要求:设计出一个学生选课数据库系统的简要要求如下:1)设计要求①建立相应的数据库及相关的表、属性、约束、规则、默认等;②输入相应的记录(每个表不少于20条记录);③编写进行数据管理的存储过程。2)系统用户由系统管理员、学生用户和教师用户三类组成。(1)系统管理员的主要功能:①用户管理(对教师、学生信息的管理和维护);②课程管理(对课程信息的管理和维护);③选课管理(实现选课功能开放和禁止、老师成绩输入开放和禁止)。(2)学生用户能实现的功能:①查询和修改个人信息,如电话、EMAIL地址;②进行选课操作,包括查看课程设置信息、选课、退选、查看已选课程;③查看自己当前所选课程的信息和以前所选课程的成绩信息。(3)教师用户能实现的功能:①查询和修改个人信息,如电话、EMAIL地址;②课程结束后,教师对所教授的学生进行成绩登记;③查看自己的教学安排,包括讲授课程、学时数、以往所教授课程的学生成绩等信息。1.3概要分析选课系统主要满足三类用户的要求:教务处的系统管理员、教师和学生,他们所具有的操作权限以及操作内容是不同的。要求选课系统可以满足以下功能:系统管理员能对学生信息、教师信息、课程信息等进行有效的管理和维护,包括增加、删除、修改等基本维护功能和灵活的查询功能;教师和学生能够对个人基本信息、授课、选课所涉及的有关信息进行查询、更新等操作。1.4系统主要功能学生选课系统分为系统管理员、教师和学生三类用户,系统管理员的功能包括维护学生信息、维护教师信息、维护课程信息;教师的功能包括查询和修改个人信息、学生成绩登记,查询教学安排;学生的功能包括查询和修改个人信息、选课相关操作、查询选课和选课成绩信息。学生选课系统功能模块如图1-1:图1-1学生选课系统功能模块图教师维护学生信息维护教师信息学生选课系统维护课程信息系统管理员学生查询和修改个人信息查询教学安排登记学生成绩查询和修改个人信息选课相关操作查询选课和选课成绩信息1.5数据流图学生选课系统数据流图如图1-2所示:管理员登录成功教师登录成功学生登录成功图1-2学生选课系统数据流图登录管理员界面教师界面学生界面维护信息查询登记成绩查询选课相关操作退出1.6学生选课系统数据字典1)数据元素条目:2)数据存储条目:数据存储条目名称:学生表总编号:2—01说明:学生个人详细信息的汇总表编号:D1结构:学号姓名性别院系专业年龄电话Email数据元素条目名称:工号总编号:0001—0021说明:本校教师编号编号:0021类型:字符数据元素条目名称:姓名总编号:0001—0022说明:本校教师姓名编号:0022类型:字符数据元素条目名称:学号总编号:01—21说明:本校学生的编号编号:21类型:字符数据元素条目名称:姓名总编号:01—22说明:本校学生的姓名编号:22类型:字符数据元素条目名称:课程号总编号:001—021说明:课程编号编号:22类型:字符数据元素条目名称:课程名总编号:001—022说明:课程名称编号:22类型:字符数据元素条目名称:成绩编号总编号:1—30说明:每条记录成绩的编号编号:30类型:字符数据元素条目名称:成绩总编号:1—31说明:学生所选课程的期末成绩编号:31类型:数字数据存储条目名称:教师表总编号:2—02说明:教师个人详细信息的汇总表编号:D2结构:工号姓名性别院系职称年龄电话Email数据存储条目名称:课程表总编号:2—03说明:学生选课前可选课程的汇总表编号:D3结构:课程号课程名学时学分任课教师数据存储条目名称:选课信息表总编号:2—04说明:学生个人所选修课程信息的汇总表编号:D4结构:学号课程号工号成绩学分二、数据库设计2.1数据库概念设计选课数据库系统中的实体有:学生、教师、课程。1)学生的属性:学号、姓名、性别、院系、专业、年龄、电话、Email2)教师的属性:工号、姓名、性别、院系、职称、年龄、电话、Email3)课程的属性:课程号、课程名、学时、学分、任课教师2.2E-R图各实体的E-R图如下所示:图2-1学生图2-3教师图2-3课程学生选课系统实体集的E-R图如图2-4所示:院系学生性别年龄姓名ming电话学号Email院系教师性别职称年龄姓名ming电话工号Email课程课程名学时学分课程号ing专业任课教师ingmnm1图2-4学生选课系统实体集的E-R图院系学生性别专业姓名ming电话学号Email学时课程课程名学分课程号ing教师工号Email年龄院系性别职称年龄姓名ming电话任课选课成绩任课教师2.3数据库的逻辑设计根据概念设计结果,创建数据库的逻辑模型,建立在具体DBMS下(SQLSERVER2005)的表结构,并根据规范化理论对表结构进行优化调整。同时,根据应用需求,创建数据库系统所需的外模式(视图)、模式和内模式(索引)等,此外,应当根据需求,建立数据完整性约束(实体完整性,参照完整性和用户自定义完整性)。1)逻辑转换根据E-R图将系统中的概念模型转换为具体的表结构,详细信息如下:学生(学号、姓名、性别、院系、专业、年龄、电话、Email)课程(课程号、课程名、学时、学分、任课教师)教师(工号、姓名、性别、院系、职称、年龄、电话、Email)选课信息(学号、课程号、工号、成绩、学分)2)建立在具体DBMS下(SQLSERVER2005)的表结构根据上述文字描述,用拼音为表和列取名,确定列的数据类型及必要的约束规则,数据库表的基本结构及说明如下:(1)学生表列明数据类型约束说明xuehaochar(10)主码学号xingmingvarchar(20)notnull姓名xingbievarchar(4)notnull性别yuanxivarchar(40)notnull院系zhuanyevarchar(40)notnull专业nianlingtinyintnotnull年龄dianhuachar(12)notnull电话emailvarchar(30)nullEmail(2)课程表列明数据类型约束说明kechenghaochar(10)主码课程号kechengmingvarchar(50)notnull课程名xueshiintnotnull课程性质xuefenintnotnull学分renkejiaoshivarchar(20)notnull任课教师(3)教师表列明数据类型约束说明gonghaochar(10)主码工号xingmingvarchar(20)notnull姓名xingbievarchar(4)notnull性别yuanxivarchar(40)notnull院系zhichengvarchar(40)notnull职称nianlingtinyintnotnull年龄dianhuachar(12)notnull电话emailvarchar(30)nullEmail(4)选课信息表列明数据类型约束说明chengjibianhaoint主码,自动生成成绩编号xuehaochar(10)notnull学号kechenghaochar(10)notnull课程号gonghaochar(10)notnull工号chengjichar(10)notnull成绩xuefenintnotnull学分三、系统实现3.1数据库访问1)数据访问类及实现代码ClassDataBaseLink{PublicstringstrConn@"DataSource=wgzx-04-0291;InitialCatalog=XueShengXuanKeXiTong;IntegratedSecurity=true";{SqlConnectioncon=newSqlConnection(strConn);Returncon;}}3)SQL语句(1)创建学生表CREATETABLE[dbo].[xueshengbiao]([xuehao][char](10)NOTNULL,[xingming][varchar](20)NOTNULL,[xingbie][varchar](4)NOTNULL,[yuanxi][varchar](40)NOTNULL,[zhuanye][varchar](40)NOTNULL,[nianling][tinyint]NOTNULL,[dianhua][char](12)NOTNULL,[email][varchar](30)NULL,(2)创建教师表CREATETABLE[dbo].[jiaoshibiao]([gonghao][char](10)NOTNULL,[xingming][varchar](20)NOTNULL,[xingbie][varchar](4)NOTNULL,[yuanxi][varchar](40)NOTNULL,[zhicheng][varchar](40)NOTNULL,[nianling][tinyint]NOTNULL,[dianhua][char](12)NOTNULL,[email][varchar](30)NULL,(3)创建课程表CREATETABLE[dbo].[kechengbiao]([kechenghao][char](10)NOTNULL,[kechengming][varchar](50)NOTNULL,[xueshi][int]NOTNULL,[xuefen][int]NOTNULL,[renkejiaoshi][varchar](20)NOTNULL,(4)创建选课信息表CREATETABLE[dbo].[xuankexinxibiao]([chengjibianhao][int]NOTNULL,[xuehao][char](10)NOTNULL,[kechenghao][char](10)NOTNULL,[gonghao][char](10)NOTNULL,[chengji][float]NOTNULL,[xuefen][int]NOTNULL,四、总结1、通过做学生选课系统的设计报告,我掌握了SQL相关语句的运用;2、我觉得在VisualStudio2005环境下编写很不容易,输入数据的时候比较不方便;3、整个设计报告完成后,我掌握了基本的设计步骤,对以后做毕业设计可能有一些帮助
本文标题:学生选课系统设计报告
链接地址:https://www.777doc.com/doc-5659867 .html