当前位置:文档之家› 学生选课系统设计报告

学生选课系统设计报告

大理学院数学与计算机学院《数据库系统设计》课程设计报告班级:2012级计算机科学与技术1班学号:*********姓名:***系统名称:学生选课系统总分:实验报告内容及撰写要求:一、需求分析程序的主要功能描述,可以用文字、框图、用例等方式。

参考《数据库系统设计任务书》附录中的内容来进行设计报告的撰写。

主要应当包含分析的过程及分析后得到的数据流图和数据字典。

二、数据库设计2.1 数据库概念设计实体关系模型设计,创建分ER图和总体ER图,并描述总体E-R图合并时的问题解决。

2.2数据库的逻辑设计根据概念设计结果,创建数据库的逻辑模型,建立在具体DBMS下(SQL SERVER 2005)的表结构,并根据规范化理论对表结构进行优化调整。

同时,根据应用需求,创建数据库系统所需的外模式(视图)、模式和内模式(索引)等,此外,应当根据需求,建立数据完整性约束(实体完整性,参照完整性和用户自定义完整性)。

三、系统实现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.1 数据库概念设计选课数据库系统中的实体有:学生、教师、课程。

1)学生的属性:学号、姓名、性别、院系、专业、年龄、电话、Email2)教师的属性:工号、姓名、性别、院系、职称、年龄、电话、Email3)课程的属性:课程号、课程名、学时、学分、任课教师2.2 E-R 图各实体的E-R 图如下所示:图2-1学生院系学生性别年龄姓名ming电话学号Email院系教师性别职称年龄姓名ming电话工号Email专业图2-3教师图2-3课程学生选课系统实体集的E-R 图如图2-4所示:课程课程名学时学分课程号ing院系学生性别专业姓名ming电话学号Email年龄任课教师ingmnm学时 课程课程名学分课程号ing任课选课成绩任课教师1图2-4学生选课系统实体集的E-R 图2.3数据库的逻辑设计根据概念设计结果,创建数据库的逻辑模型,建立在具体DBMS 下(SQL SERVER 2005)的表结构,并根据规范化理论对表结构进行优化调整。

同时,根据应用需求,创建数据库系统所需的外模式(视图)、模式和内模式(索引)等,此外,应当根据需求,建立数据完整性约束(实体完整性,参照完整性和用户自定义完整性)。

1)逻辑转换根据E-R 图将系统中的概念模型转换为具体的表结构,详细信教师工号Email院系性别职称年龄姓名ming电话息如下:学生(学号、姓名、性别、院系、专业、年龄、电话、Email)课程(课程号、课程名、学时、学分、任课教师)教师(工号、姓名、性别、院系、职称、年龄、电话、Email)选课信息(学号、课程号、工号、成绩、学分)2)建立在具体DBMS下(SQL SERVER 2005)的表结构根据上述文字描述,用拼音为表和列取名,确定列的数据类型及必要的约束规则,数据库表的基本结构及说明如下:(1)学生表(2)课程表(3)教师表(4)选课信息表三、系统实现3.1 数据库访问1)数据访问类及实现代码Class DataBaseLink{Public string strConn @"Data Source=wgzx-04-0291;InitialCatalog=XueShengXuanKeXiTong ; Integrated Security=true";{SqlConnection con=new SqlConnection(strConn);Return con;}}3)SQL语句(1)创建学生表CREATE TABLE [dbo].[xueshengbiao]( [xuehao] [char](10)NOT NULL, [xingming] [varchar](20)NOT NULL, [xingbie] [varchar](4)NOT NULL, [yuanxi] [varchar](40)NOT NULL, [zhuanye] [varchar](40)NOT NULL, [nianling] [tinyint] NOT NULL, [dianhua] [char](12)NOT NULL, [email] [varchar](30)NULL,(2)创建教师表CREATE TABLE [dbo].[jiaoshibiao]( [gonghao] [char](10)NOT NULL, [xingming] [varchar](20)NOT NULL, [xingbie] [varchar](4)NOT NULL, [yuanxi] [varchar](40)NOT NULL, [zhicheng] [varchar](40)NOT NULL, [nianling] [tinyint] NOT NULL, [dianhua] [char](12)NOT NULL,[email] [varchar](30)NULL,(3)创建课程表CREATE TABLE [dbo].[kechengbiao]([kechenghao] [char](10)NOT NULL,[kechengming] [varchar](50)NOT NULL,[xueshi] [int] NOT NULL,[xuefen] [int] NOT NULL,[renkejiaoshi] [varchar](20)NOT NULL,(4)创建选课信息表CREATE TABLE [dbo].[xuankexinxibiao]([chengjibianhao] [int] NOT NULL,[xuehao] [char](10)NOT NULL,[kechenghao] [char](10)NOT NULL,[gonghao] [char](10)NOT NULL,[chengji] [float] NOT NULL,[xuefen] [int] NOT NULL,四、总结1、通过做学生选课系统的设计报告,我掌握了SQL相关语句的运用;2、我觉得在Visual Studio 2005环境下编写很不容易,输入数* *据的时候比较不方便;3、整个设计报告完成后,我掌握了基本的设计步骤,对以后做毕业设计可能有一些帮助;4、在老师和同学的帮助下,我做出了一个简单的学生选课系统设计报告。

但是,这次系统设计有很多不足之处,自己有很多没掌握的知识,在以后的学习中需要更多的努力。

相关主题