辽宁工业大学《管理信息系统设计专题》报告题目:学生信息管理系统院(系):软件学院专业班级:软件技术班学号:学生姓名:指导教师:翟宝峰教师职称:副教授起止时间:设计任务及评语目录第1章设计目的与要求1.1设计目的本实践课的主要目的是:(1)、掌握运用管理系统及数据库原理知识进行系统分析和设计的方法;(2)掌握关系数据库的设计方法;(3)掌握SQLServer2000技术应用;(4)掌握简单的数据库应用程序编写方法;(5)理解C/S模式结构。
1.2设计环境硬件:一台Pentium4cpu以上的微机及兼容VGA彩显一台软件:WindowsXPVisualBasic6.0和SQLSever20001.3主要参考资料1.《管理信息系统》黄梯云高等教育出版社2.《数据库系统概论》萨师煊高等教育出版社3.《SQLServer2000数据库应用系统开发技术》朱如龙编,机械工业出版社。
4.《SQLServer2000数据库应用系统开发技术实验指导》朱如龙编,机械工业出版社1.4设计内容及要求一、内容1.要求根据管理信息系统及数据库设计原理,按照数据库系统设计的步骤和规范,完成各阶段的设计内容。
2.需求分析具体实际,数据流图、数据字典、关系模型要正确规范3.在sqlserver2000上实现设计的数据库模型。
4.对应用程序进行概要设计。
5.用VB实现简单的应用程序编写。
二、要求设计过程中,要严格遵守课程设计的时间安排,听从指导教师的指导。
正确地完成上述内容,规范完整地撰写出课程设计报告。
第2章设设计内容2.1数据库设计“学生管理信息系统”包括十个模块:用户信息管理,班级信息管理,学籍信息管理,课程信息管理,成绩信息管理,奖惩信息管理,个人收费信息管理,消息信息管理。
这十个模块既相互联系又相互独立。
(1)在系统管理模块中,当点击“退出”时,系统能够正常的关闭;(2)在学生管理模块:添加学生。
当生刚进校时要进行添加信息的添加;删除学生。
当学生毕业后,学生信息转移备份数据库中,系统的基本数据库中需要删除学生信息。
该功能主要进行删除学生信息;(3)在课程管理模块中,能够正确的对课程信息进行增加、修改和删除;(4)在成绩管理模块中,能够对已经进行了选课的学生所选择的课程进行成绩的添加以及修改;(5)在信息查询模块中,第一,能通过学号、姓名、性别、学院、专业等条件正确的查询到学生的基本信息;第二,能通过课程名、授课老师来查询出基本的课程信息;第三,在成绩信息查询中,能够查询出所有科目的成绩;(6)能够针对SQLSERVER2000执行数据的基本处理,如添加、删除等。
1.系统工作流程图:2.系统业务流程图:业务流程图是一种用尽可能少、尽可能简单的方法来描述业务处理过程的方法。
由它比较适用于反映事务处理类型的业务过程。
图2.2系统业务流程图3.系统数据流程图:数据流程图是描述系统数据流程的工具,它将数据独立抽象出来,通过图形方式描述信息的来龙去脉和实际流程。
3.数据字典:1)数据项:表2.1数据项2)数据结构的定义:表2.2课程信息数据字典3)数据流的定义:表2.5成绩统计4)数据存储:数据存储名:课程信息输入数据流:课程基本信息,年级开课课程输出数据流:学生选修的课程信息数据存储名:成绩信息输入数据流:更新后的成绩信息输出数据流:学生各科分数及成绩的统计2.1.2概念设计(1)学生信息实体E-R图:图2.4学生信息E-R图(2)课程信息E-R图:图2.5课程信息E-R图(2)教师信息E-R图:图2.6教师信息E-R图系统E-R图:学生信息表,学校信息表,教师信息表,课程表,成绩等表之间的联系描绘出关系模型。
联系是指学生管理系统中各个实体的联系,拥有一对一、一对多、多对多的联系。
如图2.1所示:图2.7学生管理系统总E-R图2.1.3逻辑设计逻辑结构设计阶段的任务是将概念结构设计阶段所得到的概念模型转换为具体DBMS所能支持的数据模型(即逻辑结构),并对其进行优化。
逻辑结构设计一般分为三步进行:从E-R图向关系模式转化数据库的逻辑设计主要是将概念模型转换成一般的关系模式,也就是将E-R图中的实体、实体的属性和实体之间的联系转化为关系模式。
一个实体类型转换为一个关系模型,将每种实体类型转换为一个关系,实体的属性就是关系的属性,实体的关键字就是关系的关键字。
将“客房”实体转换为一个关系模型,其中,带下划线的属性为主属性,该主属性为关系模型外键。
设计逻辑结构时一般要分三步进行:第一步:将概念经过转化为一般的关系、网状、层次模型;第二部:将转化来的关系、网状、层次模型向特定DBMS支持下的数据模型转换;第三部:对数据模型进行优化。
学籍管理(学生注册,导入学生,学生查询,学生统计,学生毕业,修改学籍)收费管理(费用减免,学生交费,交费查询,未交费查询)成绩管理(成绩录入,成绩查询,班级成绩统计,年级成绩统计,班级成绩明细,不及格名单,学生单科名次,学生总分名次)学籍变动(学生留降级处理,学生跳升级处理,学生借读处理,学生休学处理,学生复学处理,学生调班处理,学生转校处理,学生退学处理,学籍变动查询,学生试读查询,学生试读登记)学生信息管理(系统管理,学籍管理,学籍变动,收费管理,宿舍管理,成绩管理,学生评语,消息文件管理)2.1.4物理设计物理设计是对给定的逻辑数据模型配置一个最适合应用环境的物理结构。
物理设计的输入要素包括:模式和子模式、物理设计指南、硬件特性、OS和DBMS 的约束、运行要求等。
物理设计的输出信息主要是物理数据库结构说明书。
其内容包括物理数据库结构、存储记录格式、存储记录位置分配及访问方法等。
1.存储结构存储结构是建立一种由逻辑结构到存储空间的映射。
存储结构是把一组结点存放在按地址相邻的存储单元里,结点间的逻辑关系用存储单元的自然顺序关系来表达的,即用一块存储区域存储线性数据结构,为使用整数编码访问数据结点提供了便利。
2.索引的创建为student表创建一个以student_id为索引的关键字的唯一聚簇索引1)展开数据库中的表右键学生表,单击所有任务弹出的索引管理。
2)在窗体点新建索引名称为student_id_index,点击复选框“聚簇索引”、“惟一值”。
3.事务日志文件备份及存放SQLServer创建数据库的时候,会同时创建事物日志文件,事物日志存储在一个单独的日志文件上。
在修改写入数据库之前,事物日志会自动地记录对数据库对象所做的所有修改,事物日志有助于防止数据库损坏。
日志文件与数据文件要分开放在不同的磁盘上,这样事物日志就可以单独的备份,事务日志不会抢占数据库的空间,可以很容易的监测事务日志的空间。
4.存取方法:数据库系统是多用户共享的系统,对同一个关系要建立多条存取路径才能满足多用户的多种应用要求。
物理设计的任务之一就是要确定选择哪些存取方法,即建立哪些存取路径。
存取方法是快速存取数据库中数据的技术。
数据库管理系统一般都提供多种存取方祛。
常用的存取方法有二类。
第一类是索引方法,第二类是聚簇(Cluster)方法。
索引方法是数据库中经典的存取方法,使用最普遍。
索引法是为了加速对表中的数据行的检索而创建的一种分散的存储结构。
是针对一个表而建立的,它能够以一列或多列的值为关键字,迅速查找/存取表中行数据加快了数据检索。
例如在本数据库中的:学生(学号,姓名,性别,班级,出生年月,家庭住址,邮政编码,联系电话,入学时间)课程信息(课程编号、课程名称、开课日期、学时。
)整个系统需要调用学生表、成绩表等,所以学生表属性“学号”,成绩表表中的属性“学号”,将经常出现在查询条件中,可以考虑在上面建立聚簇索引以提高查询效率。
2.1.5数据库实现数据库实现是通过数据字段、关系图、存储过程和触发器实现等各部分的功能实现的。
(1)数据字段:1.学生信息表:学号,姓名,性别,民族,籍贯,入学时间,班级,专业,出生日期。
表2.6学生信息表2.课程信息表:课程编号,课程名称,开课学期,学分,教师编号,学院编号等。
详细情况如表2.7:表2.7课程表3.表4-1教师信息表:教师编号,教师名称,职称,学院编号等。
详细情况如表2.7:(2)关系图:学生管理信息系统包含学生信息表、教师信息表、课程信息表、学校信息表、成绩信息表、专业信息表、班级信息表组成。
利用各个表的主键把各个表连接到一起。
利用关系图表现出来。
如图2.8所示:图2.8学生管理系统关系图(3)运用到存储过程的如下:1).为dataebase数据库创建一个带重编译选项的存储过程,用于托运单信息表中的托运人。
CREATEPROCspa@学生char(8)WITHRECOMPILEASSELECT*FROM学生信息学号=@学号2).为datebase数据库建立一个存储过程,通过执行存储过程将学生信息添加到学生表。
CREATEPROCEDUREinsAS@student_idchar(8)=NULL,@student_namenvarchar(8)=NULL,@student_genderchar(2)=NULL,@birth_datesmalldatetime=NULL,@class_nochar(6)=NULL,@in_datesmalldatetime=NULL,@home_addrnvarchar(40)=NULL,ASDECLARE@bitSexbitIF@student_gender='男'SET@bitSex=1ELSESET@bitSex=0INSERTstudent(student_id,student_name,student_gender,birth_date,class_no,)VALUES(@student_id,@student_name,@student_gender,@birth_date,@class_no,@in_date,@home _addr)(4)触发器程序及其功能:运用到触发器的如下:为维修信息表建立INSERT触发器以自动更新教师信息表中教师人数。
USESims_fourGO/*如果存在同名的触发器,则删除之*/IFEXISTS(select教师人数fromsysobjectswheretype=’tr’and教师人数=’教师人数insert’)DROPTRIGGER教师信息_insertGOCREATETRIGGER教师人数_insertON教师人数FORINSERTASDECLARE@NumOf教师人数TINYINTSELECT@NumOf教师人数=c.教师人数_numFROM教师信息c,insertediWHEREc.教师编号=i.教师编号号IF(@NumOf教师人数>0)BEGINUPDATE教师信息SET教师人数_num=教师人数t_num+1FROM教师信息c,insertediWHEREc.教师人数=i.教师人数ENDELSE(空值,直接写下面代码也可)BEGINUPDATE教师信息SET为序人_num=(SELECTCOUNT(s.教师编号)FROM教师信息s,insertediWHEREs.教师编号=i.教师编号)FROM教师信息c,insertediWHEREc.教师编号=i.教师编号ENDGO2.2程序设计2.2.1概要设计学生管理信息系统包括学校信息管理,教师信息管理,学生信息管理,成绩信息管理,补考重修管理以及帮助说明,在成绩信息编辑页面,可以编辑更新学生成绩情况,,而在成绩查询界面,可以查到详细的学生各科成绩。