辽宁科技大学毕业设计(论文) 第17页
图4.6 学生交费信息实体E-R图
图4.7 课程管理信息实体E-R图
图4.8 成绩管理信息实体E-R图
辽宁科技大学毕业设计(论文) 第18页
4.3 系统逻辑结构设计
概念结构设计所得的E-R模型是对用户需求的一种抽象的表达形式,它独立于任何一种具体的数据模型,因而也不能为任何一个具体的DBMS支持,为了能够建立起最终的物理系统,我们还需要将概念结构进一步转化为某一DBMS所支持的数据模型,然后根据逻辑设计的准则、数据的语义约束、规范化理论等对数据模型进行适当的调整和优化,形成合理的全局逻辑结构,并设计出用户字模式。
数据库逻辑结构的设计分为两个步骤: 1、将概念设计所得的E-R图转换为关系模型。 2、对关系模型进行优化。
所以要将E-R模型转换为关系模型,就是将实体、属性和联系都要转换为相应的关系模式。具体转换规则如下:
1、一个实体类型转换为一个关系模式。
2、一个一对一(1:1)联系有两种转换方式:转换为一个独立的关系模式;与任意一端的关系模式合并。
3、一个一对多(1:n)联系也有两种转换方式:将1:n 联系转换为一个独立的关系模式;将1:n联系与n端的关系合并。
4、一个多对多(m: n)联系转换为一个关系模式。
5、同一实体集内部的联系,可将该实体集拆分为相互联系的两个子集,然后根据它们相互不同的联系方式(1:1,1:n,m:n)按上述规则处理。
6、三个或三个以上实体间的多元关系转换为一个关系模式,与该多元联系相连的各实体的关键字及联系本身的属性为关系模式的属性,关系模式的关键字为各实体关键字的并集。
7、具有相同关键字的关系模式可以合并,合并后的关系模式的属性取被合并的关系模式属性的并集,并适当调整属性的次序及名称等。
需要强调,规范化本身是一种理论,它是数据设计人员用于判断所设计的关系数据库模式优劣程度的工具,它的存在使数据库设计有了严格的理论基础,同是由于规范化可以较好地解决冗余与更新异常现象,因而已成为数据库设计所要考虑的重要环节之一。但在实际设计中,由于种种现实因素的影响,优化所产生的关系数据库模式
辽宁科技大学毕业设计(论文) 第19页
往往作为设计人员和用户实现具体模型的一个参考。
图4.9 逻辑结构设计的过程
按照关系模型转换的原则和规范化理论的原则,将概念设计所得的E-R图转换为关系模型。
用户注册(用户的名字,性别,密码,权限,是否只读,问题,答案,E-mail,真实姓名,生日,电话,地址)
在用户注册的关系模式中,用户的名字为主码,其它非主属性完全依赖于码,并且既不存在部分函数依赖,也不存在传递函数依赖,另外,用户的名字为这个关系模式的决定因素,而它本身又是关系模式的码。所以,此关系模式属于BC范式。
班级信息(班级名称,年级,教室,年制,专业,班主任,备注)
在班级信息的关系模式中,班级名称为主码,其它非主属性完全依赖于码,并且既不存在部分函数依赖,也不存在传递函数依赖,另外,班级名称为这个关系模式的决定因素,而它本身又是关系模式的码。因此,此关系模式属于BC范式。根据规范化理论的要求,一般数据库设计要达到第三范式,而BCNF是对第三范式的修正,比第三范式要求更加严格,能够保证数据库设计的科学性。
课程管理(课程的名称,年级,专业,学期,年制,备注)
在课程管理的关系模式中,课程的名称为主码,其它非主属性完全依赖于码,并且既不存在部分函数依赖,也不存在传递函数依赖,另外,课程的名称为这个关系模式的决定因素,而它本身又是关系模式的码。同样,此关系模式也属于BC范式。
交费管理(学号,学期,交费,欠费,日期,操作员)
在交费管理的关系模式中,学号为主码,其它非主属性完全依赖于码,并且既不
辽宁科技大学毕业设计(论文) 第20页
存在部分函数依赖,也不存在传递函数依赖,另外,学号为这个关系模式的决定因素,而它本身又是关系模式的码。同样,此关系模式也属于BC范式。
档案管理(学号,姓名,性别,班级,出生年月,家庭住址)
在档案管理的关系模式中,学号为主码,其它非主属性完全依赖于码,并且既不存在部分函数依赖,也不存在传递函数依赖,另外,学号为这个关系模式的决定因素,而它本身又是关系模式的码。同样,此关系模式也属于BC范式。
4.4 系统逻辑模型(面向对象方法)
1、活动图
学生注册 班级设置 基本信息输入 班级管理 成绩信 息输入 成绩信息管理
图4.10 活动图
课程基本班级课程班级课程管理 学籍信息管理 辽宁科技大学毕业设计(论文) 第21页
第5章 系统数据库的设计
5.1 系统数据库物理设计
通过对本系统各方面功能特点的研究和讨论、对SQL Server 2000的特点及性能的分析,决定选用SQL Server 2000数据库管理系统进行数据库的设计,另外本系统是基于C/S 模式下的管理系统。此学生信息管理系统的数据库中包含有成绩信息表,班级信息表,班级课程信息表,交费信息表,考试类型信息表,学生信息表等。
成绩信息表:记录学生成绩的详细信息。 班级信息表:记录班级的详细信息。 班级课程信息表:记录课程的信息。 交费信息表:记录学生交费的详细信息。 用户信息表:记录用户的详细信息。
成绩信息(学号,学期,类型,课程名称,分数),如表5.1所示:
表5.1 成绩信息表
列名 学号 学期 类型 课程名称 分数
数据类型 nvarchar nvarchar nvarchar nvarchar real
长度 10 50 16 20 4
说明 学号,主键
学期 类型 课程名称 分数
班级信息表(年级,班级,教室,年制,专业,班主任,备注),如表5.2所示:
表5.2 班级信息表
列名 年级
数据类型 nvarchar
长度 16
说明 年级,主键