数据库设计ppt课件.ppt

上传人:本田雅阁 文档编号:3185253 上传时间:2019-07-22 格式:PPT 页数:53 大小:1.11MB
返回 下载 相关 举报
数据库设计ppt课件.ppt_第1页
第1页 / 共53页
数据库设计ppt课件.ppt_第2页
第2页 / 共53页
数据库设计ppt课件.ppt_第3页
第3页 / 共53页
数据库设计ppt课件.ppt_第4页
第4页 / 共53页
数据库设计ppt课件.ppt_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《数据库设计ppt课件.ppt》由会员分享,可在线阅读,更多相关《数据库设计ppt课件.ppt(53页珍藏版)》请在三一文库上搜索。

1、数据库设计,-选课管理为例,一 数据库设计概述,什么是数据库设计 数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求) 在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。,一 数据库设计概述,为什么要数据库设计 数据库是信息系统的核心和基础 把信息系统中大量的数据按一定的模型组织起来 提供存储、维护、检索数据的功能 使信息系统可以方便、及时、准确地从数据库中获得所需的信息 数据库是信息系统的各个部分能否紧密地结合在一起以及如何结合的关键所在 数据库设计是信息系统开发和建设的重要组成

2、部分 好的信息系统:50%专业知识+25%数据库设计+25%系统设计,一 数据库设计概述,数据库设计的特点 数据库建设是硬件、软件和干件的结合 三分技术,七分管理,十二分基础数据 技术与管理的界面称之为“干件” 数据库设计应该与应用系统设计相结合 结构(数据)设计:设计数据库框架或数据库结构 行为(处理)设计:设计应用程序、事务处理等,数据库设计与应用设计相结合,数据库设计方法,手工拼凑法 设计人员的经验 规范设计法 新奥尔良(New Orleans)方法:四个阶段 S.B.Yao方法:五个步骤 I.R.Palmer方法:一步接一步的过程 辅助工具 ORACLE Designer 2000 S

3、YBASE PowerDesigner,数据库设计阶段,需求分析,需求分析就是分析用户的需要与要求 需求分析是设计数据库的起点 需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用 好的信息系统 50%专业就是强调需求分析,需求分析-任务,通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求 在此基础上确定新系统的功能。新系统必须充分考虑今后可能的扩充和改变,不能仅仅按当前应用需求来设计数据库,需求分析-重点,需求分析的重点是调查、收集与分析用户在数据管理中的信息要求、

4、处理要求、安全性与完整性要求。 信息要求 用户需要从数据库中获得信息的内容与性质 在数据库中需要存储哪些数据 处理要求 对处理功能的要求 对处理的响应时间的要求,需求分析-难点,用户缺少计算机知识,开始时无法确定计算机究竟能为自己做什么,不能做什么,因此无法一下子准确地表达自己的需求,他们所提出的需求往往不断地变化。 设计人员缺少用户的专业知识,不易理解用户的真正需求,甚至误解用户的需求。 新的硬件、软件技术的出现也会使用户需求发生变化。,需求分析方法步骤,调查清楚用户的实际需求并进行初步分析 与用户达成共识 进一步分析与表达这些需求 自顶向下的结构化分析方法(Structured Analy

5、sis,简称SA方法),需求分析方法,调查组织机构情况 调查各部门的业务活动情况 各个部门输入和使用什么数据 如何加工处理这些数据 输出什么信息 输出到什么部门、输出结果的格式 在熟悉业务活动的基础上,协助用户明确对新系统的各种要求。,需求分析常用调查方法?,跟班作业(能比较准确地理解用户的需求) 通过亲身参加业务工作了解业务活动的情况 开调查会 通过与用户座谈来了解业务活动情况及用户需求 请专人介绍 询问 设计调查表请用户填写 如果调查表设计合理,则很有效,且易于为用户接受 查阅记录:查阅与原系统有关的数据记录,数据字典,数据字典是各类数据描述的集合 数据字典是进行详细的数据收集和数据分析所

6、获得的主要结果 数据字典在数据库设计中占有很重要的地位,数据字典,数据字典的内容 数据项:数据项是数据的最小组成单位(字段) 数据项描述数据项名,数据项含义说明,名,数据类型,长度,取值范围, 取值含义,与其他数据项的逻辑关系 数据结构:若干个数据项可以组成一个数据结构(表、视图) 数据结构描述数据结构名,含义说明, 组成:数据项或数据结构 数据流:数据流是数据结构在系统内传输的路径 数据流描述数据流名,说明,数据流来源, 数据流去向, 组成:数据结构, 平均流量,高峰期流量,数据字典,数据字典的内容 数据存储 数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一 数据存储描述数据存

7、储名,说明,编号, 流入的数据流 ,流出的数据流 , 组成:数据结构,数据量,存取方式 处理过程 处理过程描述处理过程名,说明, 输入:数据流,输出:数据流, 处理:简要说明,数据字典,处理过程“分配宿舍”可如下描述: 处理过程:分配宿舍 说明: 为所有新生分配学生宿舍 输入: 学生,宿舍, 输出: 宿舍安排 处理: 在新生报到后,为所有新生分配学生宿舍。要求同一间宿舍只能安排同一性别的学生,同一个学生只能安排在一个宿舍中。每个学生的居 住面积不小于3平方米。安排新生宿舍其处理时间应不超过15分钟。,数据流图(DFD,描述数据处理过程的一种图形工具。 基本符号,加工(标注加工的名字与标号),数

8、据流(名称与编号),数据存储文件(文件名),数据源点或汇点,学籍管理系统需求分析,功能 学生选课 教师对课程成绩的输入 学生成绩查询 统计功能,学籍管理系统需求分析,保存在系统中的信息 人员记录:学生和教师 学业纪录 学生已经完成的课程 本学期选修的课程 为下学期选修的课程 课程信息 教课信息 教室信息,学籍管理系统需求分析,保存在系统中的信息(二) 课程信息 课程名、课程号、开课院系、学时 开课学期(春、秋) 允许选修的最大人数 上课时间 教课信息:为本学期开课的所有课程保留一条信息 课程 开课教师 开课地点 选课学期 教室信息:教室号和座位数,学籍管理系统需求分析,数据完整性约束 Id号唯

9、一 注册的学生数目不能大于该课程的最大人数 在相同时间,不能为一个教员指派两门课程 相同的时间,一个教室不能有两门课程 若学生选修一门课程,若该课程有预备课程则学生要选修了这门课程,且成绩至少为60。 一个学生不能注册在相同时间上课的两门课程 在一个学期内,一个学生选修课程的学分不能超过20分,分配给一个课程的教室座位数应该大于等于该课程的最大学生人数。,学生,教师,教室,课程,选课管理,课表,选课错误,选课,课程信息,教室信息,上课信息,成绩,选课成绩单,开课信息单,选课及成绩,课程信息,学生,P3.1 选课信息输入,P3.2 选课信息查询,P3.3 选课信息确认,选课信息,课程信息,课程数

10、据,学生选课信息,学生选课数据,选课信息,教务员,选课信息查询,选课审核,确认的选课信息,没确认的选课信息,分层数据流图-选课管理,数据字典,数据流,数据存储,数据库概念设计,什么是数据库概念设计 将需求分析得到的用户需求抽象为信息结构,数据库概念设计,(1)能真实、充分地反映现实世界。是对现实世界的一个真实模型。 (2)易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参与是数据库的设计成功的关键。 (3)易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充。 (4)易于向关系、网状、层次等各种数据模型转换。,数据库概念设计,常用的概念设计 E-R UML建模,设计概念

11、结构的四类方法,自顶向下 首先定义全局概念结构的框架,然后逐步细化 自底向上 首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构 逐步扩张 首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐步生成其他概念结构,直至总体概念结构 混合策略,自顶向下,自底向上,逐步扩张,三种常用抽象,1. 分类(Classification)(实体型) 定义某一类概念作为现实世界中一组对象的类型 这些对象具有某些共同的特性和行为 它抽象了对象值和型之间的“is member of”的语义 2. 聚集(Aggregation)(属性) 它抽象了对象内部类型和成分之间“is part of”

12、的语义 在E-R模型中若干属性的聚集组成了实体型,就是这种抽象 3. 概括(Generalization)(子类) 它抽象了类型之间的“is subset of”的语义 概括有一个很重要的性质:继承性。,ER集成的两种方式,一次集成 一次集成多个分E-R图 通常用于局部视图比较简单时 逐步累积式(P224图6.25(b)) 首先集成两个局部视图(通常是比较关键的两个局部视图) 以后每次将一个新的局部视图集成进来,E-R集成冲突,两类属性冲突 属性域冲突:属性值的类型、取值范围或取值集合不同。 例1, 由于学号是数字,因此某些部门(即局部应用)将学号定义为整数形式,而由于学号不用参与运算,因此另

13、一些部门(即局部应用)将学号定义为字符型形式。 属性取值单位冲突。 例:学生的身高,有的以米为单位,有的以厘米为单位,有的以尺为单位,E-R集成冲突,两类命名冲突 同名异义:不同意义的对象在不同的局部应用中具有相同的名字 例,局部应用A中将教室称为房间 局部应用B中将学生宿舍称为房间 异名同义(一义多名):同一意义的对象在不同的局部应用中具有不同的名字 例,有的部门把教科书称为课本 有的部门则把教科书称为教材,E-R集成冲突,三类结构冲突 同一对象在不同应用中具有不同的抽象 例,“课程”在某一局部应用中被当作实体 在另一局部应用中则被当作属性 解决方法:通常是把属性变换为实体或把实体变换为属性

14、,使同一对象具有相同的抽象。变换时要遵循两个准则。 同一实体在不同局部视图中所包含的属性不完全相同,或者属性的排列次序不完全相同。 实体之间的联系在不同局部视图中呈现不同的类型,(a),(b),选课管理系统E-R图,逻辑结构设计,逻辑结构设计的任务 概念结构是各种数据模型的共同基础 为了能够用某一DBMS实现用户需求,还必须将概念结构进一步转化为相应的数据模型,这正是数据库逻辑结构设计所要完成的任务。 逻辑结构设计的步骤 E-R图关系模型SQL数据模型数据模型优化,逻辑结构设计,转换内容 E-R图由实体、实体的属性和实体之间的联系三个要素组成 关系模型的逻辑结构是一组关系模式的集合 将E-R图

15、转换为关系模型:将实体、实体的属性和实体之间的联系转化为关系模式。,逻辑结构设计, 一个实体型转换为一个关系模式。 一个m:n联系转换为一个关系模式。 关系的属性:与该联系相连的各实体的码以及联系本身的属性 关系的码:各实体码的组合 例,“选修”联系是一个m:n联系,可以将它转换为如下关系模式,其中学号与课程号为关系的组合码: 一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并(合并后关系的属性:在n端关系中加入1端关系的码和联系本身的属性) 将其学生关系模式合并: 学生(学号,姓名,出生日期,所在系,年级,班级号,平均成绩),逻辑结构设计, 一个1:1联系可以转换为一

16、个独立的关系模式,也可以与任意一端对应的关系模式合并。 三个或三个以上实体间的一个多元联系转换为一个关系模式。 关系的属性:与该多元联系相连的各实体的码以及联系本身的属性 关系的码:各实体码的组合 例,“讲授”联系是一个三元联系,可以将它转换为如下关系模式,其中课程号、职工号和书号为关系的组合码: 讲授(课程号,职工号,书号),逻辑结构设计, 同一实体集的实体间的联系,即自联系,也可按上述1:1、1:n和m:n三种情况分别处理。 具有相同码的关系模式可合并。 目的:减少系统中的关系个数。 合并方法:将其中一个关系模式的全部属性加入到另一个关系模式中,然后去掉其中的同义属性(可能同名也可能不同名

17、),并适当调整属性的次序。,优化数据模型的方法,确定数据依赖 对于各个关系模式之间的数据依赖进行极小化处理, 按照数据依赖的理论对关系模式逐一进行分析,确定各关系模式分别属于第几范式。 按照需求分析阶段得到的各种应用对数据处理的要求,确定是否要对它们进行合并或分解。(并不是规范化程度越高越好),优化数据模型的方法, 按照需求分析阶段得到的各种应用对数据处理的要求,对关系模式进行必要的分解或合并 水平分解 元组(20/80原则) 垂直分解 属性分解,逻辑设计-学籍管理,教师、课程、学生、选课、讲授模式 教师(教师编号,教师姓名,性别,职称,电话,系编号) 课程(课程号,课程名,上课时间,学分,前

18、修课程) 讲授(教师编号,课程号,开课年度,开课学期) 学生(学号,姓名,性别,出生年月,电话,班级编号) 选课(学号,课程号,教师编号,开课年度,开课学期,成绩),转成数据表的结构设计,物理设计,什么是数据库的物理设计 数据库在物理设备上的存储结构与存取方法称为数据库的物理结构,它依赖于给定的计算机系统。 为一个给定的逻辑数据模型选取一个最适合应用环境的物理结构的过程,就是数据库的物理设计。,物理设计,选择物理数据库设计所需参数 数据库查询事务 查询关系、属性;连接的属性;投影属性 数据更新事务 被更新的关系 每个关系上的更新操作条件所涉及的属性 修改操作要改变的属性值 每个事务在各关系上运

19、行的频率和性能要求,物理设计,关系数据库物理设计的内容 1. 为关系模式选择存取方法(建立存取路径) 索引方法,目前主要是B+树索引方法 聚簇(Cluster)方法 HASH方法 2. 设计关系、索引等数据库文件的物理存储结构,索引,选择索引存取方法的主要内容 根据应用要求确定 对哪些属性列建立索引 对哪些属性列建立组合索引 对哪些索引要设计为唯一索引,索引,选择索引存取方法的一般规则 如果一个(或一组)属性经常在查询条件中出现,则考虑在这个(或这组)属性上建立索引(或组合索引) 如果一个属性经常作为最大值和最小值等聚集函数的参数,则考虑在这个属性上建立索引 如果一个(或一组)属性经常在连接操作的连接条件中出现,则考虑在这个(或这组)属性上建立索引 关系上定义的索引数过多会带来较多的额外开销 维护索引的开销和 查找索引的开销,物理设计-学籍管理,对信息系统中经常用查询的数据进行分析 成绩查询:针对学号和课程号建立唯一索引 课程信息查询:针对课程号和课程名建立索引 教师授课信息查询:针对教师编号和课程号建立唯一索引; 教师信息查询:根据教师编号、姓名、系部建立索引 学生信息查询:学号、姓名建立索引。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1