目录1设计时间...............................................32设计目的...............................................33设计任务...............................................34设计内容...............................................34.1需求分析..........................................44.1.1.数据分析.....................................44.1.2.功能分析.....................................44.2系统设计..........................................44.2.1概念结构设计.................................44.2.2逻辑结构设计.................................84.2.3物理结构设计表...............................94.3系统实施.........................................114.3.1数据库实现...................................114.3.2数据载入....................................154.4运行与测试.......................................174.4.1运行与测试...................................174.4.2分析........................................215总结与展望............................................21参考文献................................................23成绩评定(与参考文献在一页)............................241设计时间17周(2011年12月19~2011年12月25日)2设计目的数据库原理及应用课程设计是学习完《数据库原理及应用》课程之后,进行的一次全面的综合性练习,是软件工程专业必要的集中实践环节。数据库原理及应用课程设计的目的在于加深对数据库基础理论和基本知识的理解,掌握使用数据库进行软件设计的基本方法,提高运用数据库解决实际问题的能力,最终实现对于给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求。此次课程设计也为同学将来的毕业设计和具体工作实践奠定了坚实的基础。3设计任务研究生招生信息管理系统:其系统概述为:研究生招生信息的管理工作大致分为三个阶段,第一阶段是考生报名,第二阶段是考生成绩统计,第三阶段是录取情况统计。第一阶段,每个考生需要填写一张表,表的内容要包括自己的简历及报考情况。这些信息会作为考生档案由招生人员保管,并应用于其他统计工作阶段。第二阶段,对考生成绩进行统计。当考生成绩都公布之后,将把每个考生的各科成绩汇总起来,计算出总分、平均分,同时统计出各科的及格率、不及格率及各分数段的考生人数来,由此来分析本年考生的质量和水平。第三阶段,进行录取后的统计。当录取名单确定之后对其进行统计、分析本年的录取情况,如统计录取生的成绩、年龄、来源等情况,并进行计划招生数和实际招生数的比较等。由此获得本年研究生的录取情况。4设计内容研究生招生信息管理系统。根据各个阶段的主要功能生成相关表:一考生报名阶段:每个考生都要将自己的简历和报考情况填入一张表中。这些信息将作为每个考生的档案,由招生人员管理,后两个阶段的统计工作要用到这些档案。二考生成绩统计阶段:对考生成绩进行统计。当考生成绩都评出之后,招生人员将把每个考生的各科成绩汇总起来,计算出总分、平均分,同时统计出各科的及格率、不及格率及各分数段的考生人数来,由此来分析本年考生的质量和水平。三录取情况统计阶段:进行录取后的统计。当录取名单确定之后,招生人员要进行统计、分析本年的录取情况,如统计录取生的成绩、年龄、来源等情况,并进行计划招生数和实际招生数的比较等。由此获得本年研究生的录取情况。4.1需求分析4.1.1.数据分析(1)建立考生信息档案表,内容包括:考号、姓名、性别、年龄、政治面貌、是否应届、学力、来源、报考专业、报考类别。(2)建立考生成绩统计表,内容包括:考号、姓名、政治、外语、基础科目、专业基础科目、专业科目。(3)建立录取名单表,内容包括:考号、录取单位、复试科目、复试成绩。(4)建立录取情况分析表,内容包括:专业代码、专业名称、计划内招生数、计划外招生数。4.1.2.功能分析(1)考生档案录入(2)考生成绩录入(3)成绩汇总管理(总分,平均分,及格率等)(4)录入管理4.2系统设计4.2.1概念结构设计E-R图是分为两部分实体和属性,每个实体可以有多个属性,这些属性用来表示实体的性质。不同实体之间可以用关系进行连接,表明各个实体之间的内在联系。实体之间的关系包括一对一的关系(1:1),一对多的关系(1:N)和多对多的关系(N:M)。研究生招生信息管理系统的总体E-R图以及各个实体和实体之间的关系如图所示:图A图B不及格率及格率平均分总分考试专业基础科目外语政治考号姓名专业科目基础科目考生成绩考生汇总统计姓名学历来源考号年龄性别报考类型是否应届报考专业政治面貌考生考生档案填写图C图D专业字典专业代码专业名称计划内招生数计划内招生数成绩年龄录取情况来源复试考试录取单位考号统计比较录取名单复试科目由图ABCD组成的总E-R图考生填写考生档案姓名性别来源学历年龄政治面貌报考专业报考类别是否应届管理录取名单考号复试科目录取单位复试成绩比较专业字典专业代码专业名称计划内招生数计划外招生数考试统计考生成绩外语考号政治姓名专业科目专业基础科目基础科目考号4.2.2逻辑结构设计数据库逻辑设计的任务是将概念结构转换成特定DBMS所支持的数据模型的过程。从此开始便进入了“实现设计”阶段,需要考虑到具体的DBMS的性能、具体的数据模型特点。由E-R图所表示的概念模型可以转换成任何一种具体的DBMS所支持的数据模型,如网状模型、层次模型和关系模型。本次课程设计只讨论关系数据库的逻辑设计问题,所以只介绍E-R图如何向关系模型进行转换。关系模型的逻辑结构是一组关系模式的集合。E-R图则是由实体,实体的属性和实体间的联系三个要素组成。所以将E-R图转换为关系模型实际上就是要将实体,实体的属性和实体间的联系转换为关系模式。转换原则如下。1.实体类型的转换:一个实体型转换成一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。2.联系类型的转换,根据不同的情况做不同的处理。(1)一个1:1的联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。如果与某一端实体对应的关系模式合并,则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。(2)一个1:N的联系可以转换为一个独立的关系模式,也可以与N端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为N端实体的码。(3)一个M:N联系转换为一个关系模式。与该联系相连的各实体的码为各实体码的组合。(4)三个或三个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实休的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。(5)具有相同码的关系模式可合并。3.根据研究生信息管理系统的E-R图转换为关系模型如下。将每一个实体转换成一个关系(关系就是给出关系名,属性就是实体属性,并标明该关系的主键用下划线来表示)关系模式:考生档案(考号、姓名、性别、年龄、政治面貌、是否应届、学力、来源、报考专业、报考类别)考生成绩(考号、姓名、政治、外语、基础科目、专业基础科目、专业科目)录取名单(考号、录取单位、复试科目、复试成绩)专业字典(专业代码,专业名称,计划内招生数,计划外招生数)以上关系模式均为3NF。4.2.3物理结构设计表考生报名视图(考号,姓名,性别,年龄,政治面貌,是否应届,学历,来源,报考专业,报考类别)表-1考生档案属性名类型长度备注考号nchar20考生号(主键)姓名char20考生姓名性别char2考生性别年龄smallint2考生年龄政治面貌char10考生政治面貌是否应届char2考生是否应届学历char10考生学历来源char30考生来源报考专业char20考生报考专业报考类别char10考生报考类别考生成绩统计视图(考号,姓名,政治,外语,基础科目,专业基础科目,专业科目,复试科目,复试成绩)表-2考生成绩属性名类型长度备注考号char20考生号姓名char10考生姓名政治char3考生政治成绩外语char3考生外语成绩基础科目char3考生基础科目成绩专业基础科目char3考生专业基础科目成绩专业科目char3考生专业科目成绩考生成绩统计视图(考号,姓名,政治,外语,基础科目,专业基础科目,专业科目,复试科目,复试成绩)表-3录取名单属性名类型长度备注考号char20考生号录取单位char20考生录取单位复试科目char20考试复试科目复试成绩char3考生复试成绩录取情况统计视图(考号,姓名,录取单位,专业代码,专业名称,专业代码,计划内招生数,计划外招生数)表-4专业字典属性名类型长度备注专业代码char20各专业的代码专业名称char15各专业的名称计划内招生数char4各专业计划内招生数计划外招生数char4各专业计划外招生数4.3系统实施4.3.1数据库实现1、考生档案createtable考生档案(考号nchar(20)primarykey,姓名char(20)notnull,性别smallint(2)check(考生_xb='男'or考生_xb='女'),年龄char(2)notnull,政治面貌char(10)notnull,是否应届char(2)check(考生_sfyj='男'or考生_sfyj='女'),学历char(10)notnull,来源char(30)notnull,报考专业char(20)notnull,报考类别char(10)notnull)tablespace考生档案_data;2、考生成绩createtable考生成绩(考号char(20)primarykey,姓名char(10)notnull,政治char(3)notnull,外语char(3)notnull,基础科目char(3)notnull,专业基础科目char(3)notnull,专业科目char(3)notnull,)Tablespace考生成绩_data;3、录取名单createtable录取名单(考号char(20)primarykey,录取单位char(20)notnull,复试科目char(20)notnull,复试成绩char(3)notnull)tablespace录取名单_data;4、专业字典createtable专业字典(专业代码char(20)notnull,专业成绩char(15)notnull,计划内招生数char(4)notnull,计划外招生数char(4)notnull)Tablespace专业字典_data;4.3.2数据载入1.载入考生档案信息2.载入考生成绩信息3.载入专业成绩信息4.载入专业字典信息4.4运行与测试4.4.1运行与测