数据库系统概论课件完整版本.ppt_第1页
数据库系统概论课件完整版本.ppt_第2页
数据库系统概论课件完整版本.ppt_第3页
数据库系统概论课件完整版本.ppt_第4页
数据库系统概论课件完整版本.ppt_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

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

文档简介

第六章数据库设计 目录 上一页 下一页 退出 2 本章要点 数据库设计概述需求分析概念结构设计逻辑结构设计物理结构设计数据库的实施与维护 小结 3 数据库设计概述 数据库设计是研制数据库及其应用系统的技术 是数据库在应用领域中主要的研究课题 数据库设计 是指对于一个给定的应用环境 构造最优的数据库模式 建立数据库及其应用系统 使之能够有效地存储数据 满足各种用户的应用需求 信息要求和处理要求 数据库设计通常是在一个通用的DBMS支持下进行的 即利用现成的DBMS为基础 要点 4 数据库和信息系统 从使用者角度看 信息系统是提供信息 辅助人们对环境进行控制和进行决策的系统数据库是信息系统的核心和基础 它把信息系统中大量的数据按一定的模型组织起来一个信息系统的各个部分能否紧密地结合在一起以及如何结合 关键在数据库 因此只有对数据库进行合理的逻辑设计和有效的物理设计才能开发出完善而高效的信息系统 要点 5 数据库设计的必备知识 大型数据库的设计是一个庞大的工程 属于软件工程的范畴 要应用软件工程的方法和原理进行数据库设计对从事数据库设计的人来讲 应该具备多方面的技术和知识 主要有 计算机科学基础知识和程序设计技术 数据库基础知识和数据库设计技术 软件工程的原理和方法 应用领域的知识 其中 应用领域的专业知识随着应用系统的不同而不同 数据库设计人员必须深入实际 对应用环境专业业务有了具体的了解 要点 6 数据库设计的特点 三分技术 七分管理 十二分基础数据 是数据库建设的基本规律 技术与管理的界面 称之为 干件 十分重要数据库建设是硬件 软件和干件的结合数据库设计应该和应用系统设计相结合即整个设计过程中要把结构 数据 设计和行为设计 处理 设计密切结合起来 要点 现实世界 7 数据库设计方法 新奥尔良法 设计分为需求分析 概念设计 逻辑设计和物理设计四个步骤在数据库设计的不同阶段中使用的方法有基于ER模型的概念设计方法基于3NF的逻辑设计方法基于抽象语法规范的物理设计方法本质上是基于手工设计基本思想 过程迭代和逐步求精数据库设计工具 Oracle公司的Design2000和Sybase公司的PowerDesigner 要点 8 数据库设计的基本步骤 六个阶段 需求分析 整个设计的基础 充分了解用户的数据和处理的要求概念结构设计 整个设计的关键 独立于DBMS建立ER模型逻辑结构设计 转换成某个DBMS支持的数据模型 并利用规范化理论进行优化物理结构设计 选择适合的物理结构 存储结构和存取方法 数据库的实施 利用DBMS提供的语言和工具建立数据库和编写程序 装入数据 试运行数据库的运行和维护 正式运行后不断进行评价 调整和修改 要点 9 设计过程和使用工具 要点 10 需求分析 从系统的观点考虑 分类和收集用户数据及处理要求 并作为下一步概念设计的基础调查对象 原有的旧系统调查目标 新系统的功能调查重点 数据和处理信息要求 处理要求 安全性和完整性要求调查步骤 了解组织机构 各部门业务情况和确定系统边界分析和表达方法 结构化方法 SA 自顶向下 逐层分解 使用数据流图和数据字典工具面向对象方法 OOA 要点 11 数据流图DFD 用途 表达数据和处理之间的关系系统功能的划分可用层次结构描述 每层子功能对应各级数据流图 故每个系统都是由若干分层的数据流图来描述的一般结构 要点 数据来源 和 数据输出 一般是系统外部数据源 如 客户 显示屏 财务部 等 数据存储 对应计算机中的存储文件 如数据表 自由表 数据流 处理动作需要的数据 如 待核对工资数据 经过 核对 形成 已核对工资数据 除了 处理 要用动词描述外 其他都要用名词描述 12 数据字典 数据字典 对系统中数据的详尽文字描述 是各类数据属性的清单 进行详细的数据收集和数据分析所获得的主要结果五个组成部分 数据项 最小单位数据结构 是若干数据项有意义的集合数据流 可以是数据项 也可以是数据结构 表示某一处理过程的输入或输出数据存储 处理过程中存取的数据 常常是手工凭证 手工文档或计算机文件 处理过程 描述具体的处理方法 常常是算法的描述 要点 13 需求分析文档主要内容 系统目标 需求定义 功能说明 系统结构 计算机处理的边界与流程 工作量与经费预算 确定哪些功能由计算机完成或将来准备让计算机完成系统功能结构图 各子系统之间的联系和构成 业务流程图 反映各业务部门的信息联系 数据字典 数据描述的集合 数据流图 数据和处理过程的关系 DFD建立工具 手工绘制PowerDesignor中ProcessAnalyst工具 要点 14 示例 某工厂需要开发一个管理信息系统 完成物资管理 销售管理 人事管理等 根据初步分析 可以得到如下的系统整体描述 要点 15 销售子系统 经过开发小组的调查研究 信息流程分析和数据收集 明确了该子系统的主要功能是 要点 现仅分析销售子系统 得到子系统的顶层数据流图 如右图所示 处理顾客和销售员送来的定单工厂根据定货安排生产交出货物同时开出发票收到顾客付款后 根据发票存根和信贷情况进行应收款处理 16 细化顶层数据流图 根据以上的分析 得到整个销售子系统四大功能的第一层数据流图 红色虚线划分人机边界 内部由计算机处理 要点 17 细化 接收订单处理 对 接收订单 过程进行分析 得到第二层数据流图 接收订单 部分 要点 18 细化 处理订单 处理 第二层数据流图 处理订单 部分 要点 19 细化 开发票 处理 第二层数据流图 开发票 部分 要点 20 细化 支付过帐 处理 第二层数据流图 支付过帐 部分 要点 21 需求分析总结 需求分析的结果是得到一组基础数据 数据字典表达 和一组数据流图注意 收集将来涉及的数据 充分考虑将来可能的扩展和要求强调用户的参与DFD练习 画出某订货系统的DFD 根据库存决定是否需要采购员订货 并及时修改库存信息分析 顶层DFD中 仅描述整体要求输入 仓库管理员 输出 采购员 处理 订货第二层DFD 细化 订货 处理为两步 处理事务 产生报表增加两个存储 库存清单 和 订货信息 第三层DFD 细化 处理事务 处理为三步 接收事务 更新库存清单 处理订货 要点 22 概念结构设计 概念设计 根据需求分析结果抽象出系统的信息结构即概念模型的过程特性 独立于机器 更稳定 易理解 易更改 易转换方法 自顶向下 整体 局部自底向上 局部 整体 最常采用的方法 逐步扩张 核心 混合策略 结合前两种方法设计工具 ER图 分ER图合成总ER图 PowerDesignor中DataArchitect工具 要点 23 需求分析与概念设计的关系 一般采用自顶向下的需求分析方法和自底向上的概念设计方法 整体 局部分析 分ER 总ER每个子系统对应一个分ER图 最终可得到整个系统的ER图 要点 24 三类数据抽象 依据抽象方法和原理来逐级建立ER图分类抽象 Classfication定义对象值与型之间 ismemberof 的语义 实体型就是分类抽象 如 学生 是实体型 张三是其中一员 表达语义 ismemberof学生 张三具有和所有学生共同的行为 学习某门课程 和特征 具有学号 班号等 描述方法如右图所示 要点 用途 定义某类实体型的成员 25 聚集抽象 用途 定义实体的成份表达语义 对象内部类型和成份之间 ispartof 的含义 即实体和属性之间的关系 要点 还可以表示更复杂的聚集 如右图 一个实体的属性是聚集成另一个实体的属性 26 聚集抽象 除了实体和属性之间的联系外 聚集还能表达联系之间实例 职工参加项目 并在此过程中使用若干机器 要点 27 聚集抽象 聚集是一种抽象 通过它联系被作为高层实体集 实体集A与B以及它们的联系可被看成另一实体集C 要点 28 聚集抽象 要点 29 概括抽象 用途 定义实体型间子类的关系 issubsetof 的语义 要点 这里子类继承父类的所有属性 在绘制ER图时 子类不用再画出父类的所有属性 只要画出自身特有的属性即可 30 概括抽象 另一种表示方法 实体之间的包含联系ISA isa 表示高层实体和低层实体之间的 父类 子类 联系 要点 31 概念设计的实质 利用抽象机制对需求分析阶段收集到的数据进行分类 组织 聚集 形成实体 实体的属性 标识实体的码 确定实体之间的联系类型 设计局部E R图具体步骤和方法 选择局部应用 每层数据流图DFD作为局部ER图的设计出发点逐层设计分ER图 依据数据字典确定实体 属性和联系 局部ER图汇总成分ER图 最终分ER图 总ER图划分实体和属性的原则 属性不能再分 不能是另一些属性的聚集属性不能与实体有任何联系例 职工有 电话号码 属性 但如果一个人有多个电话号码 就要抽象出 电话 实体另外描述 要点 职工 32 概念设计示例 根据上一节需求分析得到的销售子系统DFD和DD 在第一层DFD中可以看出整个系统功能围绕了 订单 和 应收帐款 的处理 数据结构中订单 顾客 应收帐目用的最多 是许多子功能 数据流共享的数据 所以先设计整个子系统的分E R图的草图如下 要点 33 设计分ER图 根据分析第二层DFD的各部分 发现对刚才的框架应增加一些实体和联系订单 订单号 头信息 订单细节 中 订单细节 属性又分为 订货零件号 和 数量 属性 故要上升为实体 订单和订单细节之间是1 n的联系每个订单细节对应一个产品描述 以便订单从中获得产品单价和重量等信息发票清单的数据已存入应收帐款中了 就不必作为实体了 实际发票也是一种原始单据或报表因工厂对大宗订货有优惠 故要加入 折扣规则 实体 对应每一种产品因不同订货量而采用的不同折扣 而不能直接作为属性加在 产品 实体中 要点 34 销售子系统分E R图 要点 35 完整销售子系统E R图 要点 36 整个工厂管理系统的总ER图 要点 37 逻辑结构设计 根据概念模型选择具体的DBMS向数据模型转化 确定全局逻辑结构 采用规范化理论优化模型步骤ER模型 层次 网状或关系模型中的一种向特定的DBMS支持的数据模型转化 因数据类型 约束等各DBMS有所不同 规范化 要点 38 ER模型 关系模型 转换规则 实体型 关系模式 实体的属性就是关系的属性 实体的码就是关系的码 联系 关系模式 与该联系相连的各实体的码以及联系的属性转换为关系的属性 该关系的码则有四种情况 1 1联系 每个实体的码均为该关系的候选码 该联系转化成的关系模式可与任一端实体合并1 n联系 关系的码为n端实体的码 该联系转化成的关系模式可与n端实体合并m n联系 关系的码为诸实体码的组合 只能是独立的关系模式多元联系 关系的码为诸实体码的组合 只能是独立的关系模式具有相同码的关系可以合并 要点 39 示例 要点 40 示例 要点 41 示例 要点 42 数据模型的优化 以规范化理论为指导确定数据依赖消除冗余联系优化到3NF根据系统需求进行必要的分解和合并为了某些功能的需要 如查询 报表等可对某些关系进行合并但不一定所有的同码关系都要合并 如学生关系和奖惩关系 都是以 学号 为码 但不一定每个学生都有奖惩记录 所以不应合并 不然会造成很多空值记录垂直分解 水平分解 要点 43 设计子模式 设计各应用需要的视图合并各分ER图时为解决命名冲突 将同一属性使用了同一名字 但为了用户的习惯可用视图另外命名对某些安全性缺乏的DBMS 可利用视图确保系统安全简化用户使用 某些可推导的数据在定义模型时是去掉了 但用户又需要查询或打印时由系统自动计算出来 如计算总成绩 盘点核对帐存和实存等 则可以用视图定义 作为数据环境的对象 直接添加到表单或报表中 要点 44 物理结构设计 根据逻辑模型确定物理设备上的存储结构与存取方法 依赖具体的计算机软硬件环境存取方式的选择 索引方法 经常被查询 使用聚集函数和用于连接的属性上建立索引聚簇方法 某属性 组 上取值相等的元组集中存放在连续物理块上 经常连接的关系 相等比较条件 取值重复性高的属性上建立聚簇HASH方法 用HASH函数直接映射物理地址的方法 多用于大小可知且固定不变的关系上 有的DBMS提供了动态的HASH方法 要点 45 物理结构设计 确定物理存储结构数据存放位置 易变的和稳定的分开的原则如 表和索引分开放在不同的磁盘上 系统配置 设置系统有关的各类参数等如 内存 缓冲区等分配参数 同时使用数据库的用户数等 评价 依赖于DBMS根据得到的多种方案 比较时间和空间效率 维护代价及用户要求等 选定最合适 高效的作为数据库的物理结构 要点 46 销售子系统的物理模型 要点 47 数据库的实施与维护 数据库的实施相应于软件工程的编码 调试阶段 设计人员运用DBMS提供的数据定义语言将逻辑设计和物理设计的结果严格地描述出来 成为DBMS可接受的源代码 步骤 用DDL定义数据库结构 组织数据入库 编制与调试应用程序 数据库试运行运行与维护 试运行之后正式投入使用 花费时间最长的工作 由DBA负责转储和恢复 安全性和完整性控制 性能监

温馨提示

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

最新文档

评论

0/150

提交评论