数据库技术及应用第二章.ppt_第1页
数据库技术及应用第二章.ppt_第2页
数据库技术及应用第二章.ppt_第3页
数据库技术及应用第二章.ppt_第4页
数据库技术及应用第二章.ppt_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

李雁翎编著高等教育出版社 数据库技术及应用VisualFoxPro 第2章数据库设计 本章要点 掌握数据库设计的任务 方法与步骤 掌握需求分析阶段任务 掌握概念结构设计方法 掌握实体 联系模型设计方法 掌握逻辑结构设计方法 掌握关系数据库库最常用的术语和基本概念 了解物理结构设计内容 了解数据库实施内容 2 1数据库设计概述 2 1 1数据库设计的任务 2 1数据库设计概述 2 1 1数据库设计的任务 数据库设计的任务主要就是设计数据库模式 既设计数据库系统体系结构中三级模式的模式结构 它能够概括具体的数据库应用系统的数据库全局的数据结构 它能够反映使用本系统所有用户的数据视图 一个良好的数据库模式应具有最小的数据冗余 在一定范围内实现数据共享特性 数据库模式一经设计完成 通常情况下是不轻易改动的 它不仅作为应用程序存取数据 处理数据的数据结构参照 还要成为实现数据物理存储的数据结构定义的依据 2 1 2数据库设计的步骤 2 1数据库设计概述 2 1 2数据库设计的步骤 数据库设计是综合运用计算机软 硬件技术 结合应用系统领域的知识和管理技术的系统工程 数据库设计归纳为如下几个阶段 1 需求分析阶段2 概念结构设计阶段3 逻辑结构设计阶段4 物理结构设计阶段5 实施阶段6 使用与维护阶段 2 2需求分析 2 2需求分析 1 需求分析的任务 1 信息要求 了解用户将从数据库中获得信息的内容 性质 数据库应用系统用到的所有基础信息类型及其联系 了解用户希望从数据库中获得哪些类型的信息 数据库中需要存储哪些数据 2 处理要求 了解用户希望数据库应用系统对数据进行什么处理 对各种数据处理的响应时间的要求 对各种数据处理的频率的要求 对数据处理方式的要求是批处理还是联机处理等 3 安全性要求 了解用户对数据库中存放的信息的安全保密要求 哪些信息是需要保密的 哪些信息是不需要保密的 4 完整性要求 了解用户对数据库中存放的信息应满足什么样的约束条件 什么样的信息在数据库中才是正确的数据 2 2需求分析 2 需求分析具体做法 1 调查数据库应用系统所涉及的用户的各部门的组成情况 各部门的职责 各部门的业务及其流程 确定系统功能范围 明确哪些业务活动的工作由计算机完成 哪些由人工来做 2 了解用户对数据库应用系统的各种要求 包括信息要求 处理要求 安全性和完整性要求 如各个部门输入和使用什么数据 如何加工处理这些数据 处理后的数据的输出内容 格式及发布的对象等 3 深入分析用户的各种需求 并用数据流图描述整个系统的数据流向和对数据进行处理的过程 描述数据与处理之间的联系 4 分析系统数据 用数据字典描述数据流图中涉及的各数据项 数据结构 数据流 数据存储和处理过程 2 3概念结构设计 2 3 1实体 联系模型 2 3概念结构设计 2 3 1实体 联系模型 实体 联系模型 EntityRelationshipModel 简称E R模型 1 实体 Entity 客观存在并相互区别的 事物 2 属性 Attribute 实体有若干个特性 每一个特性称为实体一个属性 3 实体型 EntityType 用实体名和属性名称集来描述同类实体 称为实体型 4 实体集 EntitySet 实体集是若干个同类实体的集合 5 码 Key 如果某个属性或某个属性集的值能够唯一地标识出实体集中的某一个实体 该属性或属性集就可称为码 关键字 作为码的属性或属性集又称为主属性 反之为非主属性 6 联系 Relationship 联系是两个或两个以上的实体集间的关联关系的描述 2 3 2实体 联系图 2 3概念结构设计 2 3 2实体 联系图 E R模型是用E R图来描述的 即通过图形描述实体集 实体属性和实体集之间联系的图形 在E R模型中 数据的结构被表示为 实体 联系 图 E R图 图中有3个主要的元素 即实体集 属性和联系 其中 1 矩形 框用于表示实体集 2 椭圆形 框用于表示实体集中实体的公共属性 3 菱形 框用于表示实体集之间的联系 2 3 3实体集联系类型 2 3概念结构设计 2 3 3实体集联系类型 实体集的联系类型有如下3种类型 1 一对一联系设有实体集A与实体集B 如果A中的一个实体 至多与B中的一个实体关联 反过来 B中的一个实体 至多与A中的一个实体关联 称A与B是 一对一 联系类型 记作 1 1 2 一对多联系设有实体集A与实体集B 如果A中的一个实体 与B中可以有多个实体关联 反过来 B中的一个实体 至多与A中的一个实体关联 称A与B是 一对多 联系类型 记作 1 n 3 多对多联系设有实体集A与实体集B 如果A中的一个实体 与B中可以有多个实体关联 反过来 B中的一个实体 与A中可以有多个实体关联 称A与B是多对多联系类型 记作 m n 例 教学管理系统E R图设计 某学校的教学管理系统经分析应包括以下内容 1 学生 学号 姓名 性别 年龄 2 班级 班级号 班级名 3 教师 教师号 姓名 性别 职称 电话号码和家庭地址 4 课程 课程号 课程名 学分 学时 5 专业 专业号 专业名 6 系 系号 系名 2 3 4E R模型的设计实例 每个实体及其属性如图所示 教学管理系统各实体间的联系 图3 7 2 3 4E R模型的设计实例 2 3概念结构设计 E R模型的设计实例 人才档案管理系统 是一个包含人才档案信息管理 人才需求信息管理和求职期望的综合信息管理系统 设计这样一个综合系统E R模型 由于实体集个数较多 实体集中实体公共属性较多 实体集之间的相互关联关系复杂 绘制一个E R模型图相对复杂 通常采用的设计思想是 化全局 为 局部 再做 局部集成 人才档案管理系统 E R模型具体设计步骤如下 1 绘制 人才档案管理系统 总体功能框图 2 绘制 人才档案管理系统 每个子系统的E R模型图 3 绘制 人才档案管理系统 几个子系统的E R模型图的集成图 2 3 4E R模型的设计实例 2 3概念结构设计 1 人才档案管理系统 总体功能框图如下 2 3 4E R模型的设计实例 2 3概念结构设计 2 人才档案信息管理子系统 系统的E R图如下 2 3 4E R模型的设计实例 2 3概念结构设计 3 人才档案管理系统 几个子系统的E R模型图的集成图如下 2 4逻辑结构设计 2 4 1关系模型 2 4逻辑结构设计 2 4 1关系模型 数据模型由数据结构 数据操作和完整性约束3部分组成 1 关系模型数据结构用二维表形式表示实体集的数据结构模型 称之为关系 Relation 1 在一个关系中 每一个数据都可看成独立的分量 Component 2 在一个关系中 每一横行称为一个元组 Tuple 3 在一个关系中 每一竖列称为一个属性 Attribute 4 在一个关系中 有一个关系名 同时每个属性都有一个属性名 通常把用于描述关系结构的关系名和属性名的集合称为关系模式 Schema 5 码 键 是关系模型中的一个重要概念 6 由关系模型 二维表 建立的数据库 称为关系数据库 2 4 1关系模型 2 4逻辑结构设计 2 关系模型的数据操作关系模型的数据操作是集合操作性质的 即数据操作的对象和操作结果均为若干个元组 或属性集合 关系模型的数据操作主要是查询 插入 删除和修改 3 关系模型的完整性约束 1 用户自定义完整性 用户自行定义的删除约束 更新约束 插入约束 2 实体完整性 对关系中元组的唯一性约束 也就是对组成主键的属性的约束 即关系 表 中组成主键的属性不能是空值 NULL 3 参照完整性 是对关系数据库中建立关联关系的关系间数据参照引用的约束 也就是对组成外键的属性的约束 准确地说 参照完整性是指关系中的外键必须是另一个关系的主键有效值 或者是NULL 空 值 2 4 1关系模型 2 4逻辑结构设计 4 关系模型的主要特点 1 关系中每一分量不可再分 是最基本的数据单位 2 每一列的分量是同属性的 列数根据需要而设 且各列的顺序是任意的 3 每一行由一个实体的诸多属性构成 且各行的顺序可以是任意的 4 一个关系是一张二维表 不允许有相同的属性名 也不允许有相同的元组 2 4 2关系的规范化 2 4逻辑结构设计 2 4 2关系的规范化 1 数据库设计中的问题如果一个关系没有经过规范化 可能会出现数据冗余大 数据更新造成不一致 数据插入异常和删除异常 2 4 2关系的规范化 2 4逻辑结构设计 2 4 2关系的规范化 2 函数依赖函数依赖 FunctionDependency 是关系规范化的主要概念 是描述了属性之间的一种联系 1 函数依赖定义定义2 1 设R U 是一个属性集U上的关系模式 X和Y是U的子集 对于R U 的任意一个可能的关系r 若有r的任意两个元组 在X上的属性值相同 则在Y上的属性值也一定相同 则称 X函数确定Y 或 Y函数依赖于X 记作X Y 例 求A B C的函数依赖关系 2 4 2关系的规范化 2 4逻辑结构设计 2 完全函数依赖和部分函数依赖定义定义2 2 在关系模式R U 中 如果X Y 并且对于X的任何一个真子集X 都有X Y 则称Y部分函数依赖于X 记作 否则称Y完全函数依赖于X 记作 由定义2 2可知 当X是单属性时 由于X不存在任何真子集 如果X Y 则 3 传递函数依赖定义定义2 3 在关系模式R U 中 如果X Y YX 且YX Y Z 则称Z传递函数依赖于X 2 4 2关系的规范化 2 4逻辑结构设计 3 关系规范化关系规范化理论认为 关系数据库中的每一个关系都要满足一定的规范 根据满足规范的条件不同 可以化分为6个等级5个范式 分别称为第一范式 1NF 第二范式 2NF 第三范式 3NF 修正的第三范式 BCNF 第四范式 4NF 第五范式 5NF NF是 NormalForm 的缩写 2 4 2关系的规范化 2 4逻辑结构设计 关系规范化的前三个范式原则如下 1 第一范式 若一个关系模式R的所有属性都是不可再分的基本数据项 则该关系模式属于第一范式 1NF 2 第二范式 若关系模式R属于1NF 且每个非主属性都完全函数依赖于码 则该关系模式属于2NF 2NF不允许关系模式中的非主属性部分函数依赖于码 例子 SC 学号 姓名 年龄 课程号 课程名 学分 成绩 S 学号 姓名 年龄 C 课程号 课程名 学分 G 学号 课程号 成绩 2 4 2关系的规范化 2 4逻辑结构设计 3 第三范式 若关系模式R属于1NF 且每个非主属性都不传递依赖于码 则该关系模式属于3NF 例子 SD 学号 姓名 年龄 系号 系名 系主任 S 学号 姓名 年龄 D 系号 系名 系主任 2 4 2关系的规范化 2 4逻辑结构设计 4 模式分解对关系模式进行分解 要符合 无损连接 和 保持依赖 的原则 1 无损连接 当对关系模式R进行分解时 R元组将分别在相应属性集进行投影而产生新的关系 2 保持依赖 当对关系模式R进行分解时 R的函数依赖集也将按相应的模式进行分解 如果分解后的总的函数依赖集与原函数依赖集保持不变 则称为保持函数依赖 2 4 3E R模型与关系模型的转换 2 4逻辑结构设计 2 4 3E R模型与关系模型的转换 E R模型转换成关系模型 就是将实体型和实体型间的联系转换为关系模式 确定关系模式的属性和码 转换过程中要做到不违背关系的完整性约束 尽量满足规范化原则 1 概念模型相关的定义与关系模型的定义对应关系如下表所示 2 4 3E R模型与关系模型的转换 2 4逻辑结构设计 2 概念模型转换关系模型的规则 1 一个实体型转换为一个关系模式 2 实体的属性就是关系的属性 实体的码就是关系的码 3 一个1 1联系可以转换为一个独立的关系模式 也可以与任意一端对应的关系模式合并 如果转换为一个独立的关系模式 则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性 每个实体的码均是该关系的候选码 如果与某一端实体对应的关系模式合并 则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性 4 一个1 n联系可以转换为一个独立的关系模式 也可以与n端对应的关系模式合并 如果转换为一个独立的关系模式 则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性 而关系的码为n端实体的码 5 一个m n联系转换为一个关系模式 与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性 而关系的码为各实体码的组合 6 三个或三个以上实体间的一个多元联系可以转换为一个关系模式 与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性 而关系的码为各实体码的组合 7 具有相同码的关系模式可合并 Girl Gname Bage Bname Boy Inlove Gclass Gage Bclass 1 1 HowLong S Sno Dname Dno Dept In Sage Sname Dph n 1 S Sno Cname Cno C SC Sage Sname Grade Hour m n 2 4 3E R模型与关系模型的转换 2 4逻辑结构设计 人才档案管理系统 E R模型转换成关系模型 人才档案 编号 姓名 性别 出生日期 学历 政治面貌 民族 工资现状 工作简历 照片 成就成果 成果名称 成果类别 成果出处 编号 专业特长 专业 毕业学校 专业年限 职称 语种 外语水平 编号 联系方式 编号 工作单位 宅电 手机 E mail 邮编 通讯地址 求职期望 编号 工作地区 岗位编号 工作类型 企业性质 希望工资 其它要求 人

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论