第8章数据库设计

上传人:枫** 文档编号:567665683 上传时间:2024-07-22 格式:PPT 页数:35 大小:776.50KB
返回 下载 相关 举报
第8章数据库设计_第1页
第1页 / 共35页
第8章数据库设计_第2页
第2页 / 共35页
第8章数据库设计_第3页
第3页 / 共35页
第8章数据库设计_第4页
第4页 / 共35页
第8章数据库设计_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《第8章数据库设计》由会员分享,可在线阅读,更多相关《第8章数据库设计(35页珍藏版)》请在金锄头文库上搜索。

1、第第第第8 8 8 8章章章章 数据库设计数据库设计数据库设计数据库设计 科学出版社科学出版社科学出版社科学出版社高等院校计算机高等院校计算机高等院校计算机高等院校计算机信息类规划教材信息类规划教材信息类规划教材信息类规划教材20122012上海市精品课程上海市精品课程上海市精品课程上海市精品课程上海教育高地建设项目上海教育高地建设项目上海教育高地建设项目上海教育高地建设项目主编主编主编主编 贾铁军贾铁军贾铁军贾铁军 甘泉甘泉甘泉甘泉副主编副主编副主编副主编 沈学东沈学东沈学东沈学东 常艳常艳常艳常艳 连志刚连志刚连志刚连志刚 胡静胡静胡静胡静编著编著编著编著 李向臣李向臣李向臣李向臣 曾刚曾

2、刚曾刚曾刚 滞候攫餐寇预凸脉蜕障背小硝恤椭钓傲实圾牺刀鞋藩垂梁类祷婚屎惩北惋第8章数据库设计第8章数据库设计目目 录录 8.1 数据库设计概述数据库设计概述18.2 数据库应用系统设计数据库应用系统设计2 8.3 数据库设计文档数据库设计文档3 8.4 应用系统设计案例应用系统设计案例4调巷孟煞坝听茬哀鬼鸥荧吞邻舶末臣疏凰店辣蹦阁伏淹艳春荔扦房荔廖眺第8章数据库设计第8章数据库设计目目 录录本章要点本章要点本章要点本章要点 数据库应用设计步骤数据库应用设计步骤 用户需求描述与分析、概念设计、逻辑设计、物理设计、用户需求描述与分析、概念设计、逻辑设计、物理设计、 数据库实现数据库实现 数据运行与

3、维护数据运行与维护 数据库设计规范文档数据库设计规范文档教学目标教学目标教学目标教学目标 掌握掌握数据库设计的数据库设计的步骤及任务步骤及任务 掌握掌握需求分析、概念设计、逻辑设计、物理设计方法需求分析、概念设计、逻辑设计、物理设计方法 掌握掌握数据库数据库实现实现和运行维护和运行维护 理解理解数据库设计规范数据库设计规范重点重点重点重点重点重点重点重点寥浇抡账烂赶玉核县津诸议豆红疽驮式灵梢昂踢谣施独产仇叼折耪挡辑臭第8章数据库设计第8章数据库设计8.1.1 数据库设计的任务、内容和特点数据库设计的任务、内容和特点 n1.1.数据库数据库应用系统应用系统设计的任务设计的任务n n数数数数据据据

4、据库库库库设设设设计计计计是是指指根根据据用用户户及及应应用用系系统统需需求求, ,设设计计与与构构建建数据库数据库结构结构结构结构及及应用系统应用系统应用系统应用系统的的过程过程。 n2.2.数据库设计的内容数据库设计的内容n1 1)数据库结构设计数据库结构设计数据库结构设计数据库结构设计是指是指根据根据给定的给定的应用环境应用环境, 进行进行数据库的数据库的模式设计模式设计或或子模式的设计子模式的设计. .包括包括数数 据库据库的的概念设计、逻辑设计和物理设计概念设计、逻辑设计和物理设计。n2 2)数据库应用程序设计数据库应用程序设计数据库应用程序设计数据库应用程序设计是指对用户的是指对用

5、户的功能性能设计功能性能设计。n3.3.数据库设计的特点数据库设计的特点n1 1)数据库建设数据库建设数据库建设数据库建设是硬件、软件和构件是硬件、软件和构件( (技术和管理界面技术和管理界面) )的的结合结合n2 2)数据库设计数据库设计数据库设计数据库设计与应用系统与应用系统设计设计相结合相结合 复习复习复习复习E-R模型实体实体实体实体关系模式客观事物客观事物应用程序应用程序应用程序应用程序- -事务处理事务处理事务处理事务处理蛇炎廖泄僻督诸川戴腿留理眷供款肿屈馈褐宰殿哗溯叔楼衬窟伶孩观轰益第8章数据库设计第8章数据库设计8.1.2 数据库设计方法简述数据库设计方法简述n 著名著名新奥尔

6、良新奥尔良(NewOrleans)(NewOrleans)法法, ,目前目前公认公认较较完整和权威完整和权威一种一种规范设计法规范设计法, ,将将数据库设计数据库设计分分4 4阶段阶段: 需求分析需求分析( (分析用户需求分析用户需求) )、概念设计概念设计( (信息分析和定义信息分析和定义),), 逻辑设计逻辑设计( (设计的实现设计的实现) )和和物理设计物理设计( (物理数据库设计物理数据库设计).). n1.1.基于基于E-RE-R模型模型的的数据库设计方法数据库设计方法 步骤步骤:确定确定实体实体- -确定确定联系联系-ER-ER图图- -确定确定属性属性- -转换转换逻辑数据逻辑数

7、据模型模型- -设计设计记录格式。记录格式。n2.2.基于基于3NF3NF的的数据库设计方法数据库设计方法 思想思想:在在分析分析基础上基础上确定确定属性依赖关系,属性依赖关系, 组织组织单一模式再单一模式再投影投影分解分解,消除消除 3NF3NF约束条件约束条件, ,规范成规范成几个几个3NF3NF关系模式关系模式。n3.3.计算机辅助计算机辅助数据库设计方法数据库设计方法 步骤步骤:需求分析、逻辑结构设计、物理结构设计需求分析、逻辑结构设计、物理结构设计 (实现自动化设计(实现自动化设计PD-PBPD-PB)ERER图图图图- -概念设计概念设计概念设计概念设计表结构表结构表结构表结构-

8、-逻辑设计逻辑设计逻辑设计逻辑设计存存 储储 安安 排排存存 储储 安安 排排索引等索引等索引等索引等- -物理设计物理设计物理设计物理设计持烃开杏鞍黑染淬迪陕妥拂泥透交忌衷赚锗搅赣径匡碟友瞄逞孜快落咀稿第8章数据库设计第8章数据库设计数数 据据 库库 设设 计计数数 据据 库库 设设 计计(开开 发发)的的 六六 个个 阶阶 段段面向问题面向问题面向问题面向问题面向实现方法面向实现方法面向实现方法面向实现方法茵师浸咸痘荡跟裴烹筋显绞磐同岗踪捷吭法撒停庆侩忌宏分古战牡鸟恨赫第8章数据库设计第8章数据库设计8.1.3 数据库开发设计的步骤数据库开发设计的步骤BDBD设计设计( ( ( (开发开发

9、开发开发) ) ) )步骤步骤: :n1 1)需求需求分析分析阶段阶段n2 2)概念结构概念结构设计设计阶段阶段n3 3)逻辑结构逻辑结构设计设计阶段阶段n4 4)物理物理设计设计阶段阶段n5 5)数据库实施阶段)数据库实施阶段n6 6)运行与维护阶段)运行与维护阶段设计各阶段设计各阶段设计描述设计描述数数 据据处处 理理需求分析需求分析数据字典,全系统中数据字典,全系统中数据项、数据流数据项、数据流图图 、数、数据存储的描述据存储的描述数据流图核定表数据字典数据流图核定表数据字典处理过程的描述处理过程的描述,组织结构图,组织结构图概念结构设计概念结构设计概念结构设计概念结构设计概念模型概念模

10、型( (E-RE-R图图) )数据字典数据字典系统说明书。包括:系统说明书。包括:1)新系统要求、方案和概图)新系统要求、方案和概图2)反映新系统信息数据流图)反映新系统信息数据流图逻辑结构设计逻辑结构设计逻辑结构设计逻辑结构设计某种数据模型、关系模某种数据模型、关系模型型, ,库、表、视图结构库、表、视图结构系统结构图、系统结构图、功能功能模块结构图模块结构图物理设计物理设计物理设计物理设计存储安排存储安排- -结构顺序过程结构顺序过程存取方法选择存取方法选择存取路径建立存取路径建立模块设计、模块设计、界面设计界面设计IPO表表索引等索引等实施阶段实施阶段编写模式编写模式装入数据装入数据数据

11、库试运行数据库试运行程序编码程序编码编译联结编译联结测试测试运行维护运行维护性能测试,转储性能测试,转储/恢复恢复数据库重组和重构数据库重组和重构新旧系统转换、运行、维护新旧系统转换、运行、维护( (修正性、适应性、改善性维护修正性、适应性、改善性维护BDBD设计设计设计设计设计设计关键关键-综合归纳抽象综合归纳抽象准确准确掌握分析掌握分析用户用户需求需求概念模型概念模型数据模型并优化数据模型并优化为为3选取存储结构和方法选取存储结构和方法应用系统应用系统应用系统应用系统- -数据库数据库数据库数据库需求分析报告需求分析报告需求分析报告需求分析报告DBDB设计报告设计报告设计报告设计报告幌抑屈

12、奶渡抽沼茶毒胰廊历台丙畦狮韦聂枣壹轰快话钧惰所叙刁出倚赵忧第8章数据库设计第8章数据库设计8.2 数据库应用系统设计数据库应用系统设计n8.2.1 8.2.1 系统需求分析系统需求分析n1 1、需求分析的任务、需求分析的任务n需求分析需求分析的的任务任务是是通过通过详细详细调查调查实际业务实际业务要要处理处理的的对象对象,通过通过充分对充分对原系统原系统的的工作情况工作情况的的分析分析, ,明确明确用户各种用户各种需求需求, ,在此基础上在此基础上确定确定新系统的新系统的功能、性能、接口功能、性能、接口等。等。nDBDB需求分析需求分析主要包括主要包括“数据数据/ /信息信息”和和“处理处理”

13、两个方面两个方面. .调查收集分析确定调查收集分析确定用户及系统需求,用户及系统需求,编写编写文档。文档。n2 2、需求分析的方法、需求分析的方法n主要方法主要方法有有自顶向下自顶向下和和自底向上自底向上两种两种, ,其中其中结构化分析方法结构化分析方法(Structured Analysis,SA)(Structured Analysis,SA)是一种是一种简单实用简单实用的的方法方法. .应用系统应用系统应用系统应用系统- -数据库数据库数据库数据库稀蚌北焉抡碘壁试台徐充忽咱稀勇惧妖盎邓渣愿梅躺椅航像桐溅瞳灼款篇第8章数据库设计第8章数据库设计8.2.1 系统需求分析系统需求分析n数据字典

14、数据字典和和数据流图数据流图n(1 1)数据字典数据字典- -业务数据及业务数据及结构结构属性属性( (特征特征) )的集合的集合( (清单清单) )n1 1)数据项)数据项 数据项名数据项名, ,含义说明含义说明, ,别名别名, ,数据类型数据类型, ,长度长度, ,范围范围, ,联系联系 n2 2)数据结构)数据结构 数据结构名数据结构名, ,含义说明含义说明, ,组成组成:数据项或数据结构数据项或数据结构n3 3)数据流)数据流 数据流名数据流名, ,说明说明, ,数据流来源数据流来源, ,去向去向, ,组成组成:数据结构数据结构n4 4)数据存储)数据存储 数据存储名数据存储名, ,说

15、明说明, ,编号编号, ,流入数据流流入数据流, ,流出流出, ,组成组成 n5 5)处理过程)处理过程 处理过程名处理过程名, ,说明说明, , 流入流入, ,处理处理, ,输出输出 n(2 2)数据流图数据流图n数据流图数据流图(Data Flow Diagram,(Data Flow Diagram,DFDDFD) )描述描述数据与处理流程数据与处理流程及及其其关系关系的的图形表示图形表示。n 常用常用DFD DFD 2 2种种处理判断实体数据源数据源数据源数据源/ /谭谭谭谭处理文件处理实体数据结构数据结构-特征特征描述集描述集非鹰敲拦讹宇梗竿尉巫菩租甥皮滦仟膛奔祈郁友缩秆雁砸失颤赔拉

16、儡心修第8章数据库设计第8章数据库设计8.2.2 概念结构设计概念结构设计n将将需求分析需求分析得到得到的用户需求的用户需求, ,抽象为抽象为信息结构信息结构( (概念模型概念模型) )的的过程过程就是就是概念结构设计概念结构设计概念结构设计概念结构设计 n概念结构设计概念结构设计的的特点特点特点特点:n易于理解易于理解,可,可用它用它和用户和用户交换交换意见,用户的积极意见,用户的积极参与参与是是数据库数据库的的设计设计成功的成功的关键关键。n真实、充分地反映现实世界真实、充分地反映现实世界,包括包括事物和事物之间的事物和事物之间的联联系系,能,能满足满足用户对用户对数据数据的的处理处理要求

17、要求。是对。是对现实世界现实世界的一个的一个真实模型真实模型。n易于更改易于更改,当应用环境和应用,当应用环境和应用要求要求改变改变时,容易对概念时,容易对概念模型模型修改修改和和扩充扩充。n易于易于向向关系、网状、层次等关系、网状、层次等数据模型数据模型转换转换( (实现实现) )。真实真实抽象表达抽象表达-完整准确完整准确模拟模拟-易易理解修改理解修改-便便实现实现龟答遵喳莉甩歇怒答带蜒卞伊胰拦惭踏扇魁烃肉蚀煌涌群狞后墟闻踪毙暖第8章数据库设计第8章数据库设计8.2.2 概念结构设计概念结构设计概念结构设计概念结构设计: :将将用户需求用户需求抽象为抽象为概念模型概念模型的的过程过程(BD

18、(BD设计设计关键关键) )n1.1.概念结构的设计方法概念结构的设计方法n(1 1)自顶向下自顶向下( (右上图右上图) )n(2 2)自底向上自底向上( (右下图右下图) )n(3 3)逐步扩张逐步扩张( (分解分解)n(4 4)混合策略混合策略信息结构信息结构信息结构信息结构E-RE-R图图图图邪介芦铜惮蒋翌聊略协惟侯滚省拽知敌垃但蚁琶熏呸淫遮段饲裤友庞龄郸第8章数据库设计第8章数据库设计8.2.2 概念结构设计概念结构设计n2.2.概念结构设计的步骤概念结构设计的步骤n(1 1)进行进行数据数据抽象抽象, ,设计设计局部局部E-RE-R模型模型n(2 2)集成集成各局部各局部E-RE-

19、R模型模型, ,形成形成全局全局E-RE-R模型模型n3.3.数据抽象与局部数据抽象与局部E-RE-R模型设计模型设计n(1 1)数据抽象)数据抽象n设计设计局部局部E-RE-R模型模型的的关键关键关键关键是正确是正确划分划分实体实体和和属性属性。实体实体和属和属性在形式上并性在形式上并无明显无明显区分区分的的界限界限, ,通常是通常是按照按照现实世界中现实世界中事事物物的的自然自然划分划分来来定义定义实体实体和属性,和属性,进行进行数据数据抽象抽象, ,调整后调整后得得到到实体实体和和属性属性. .自自 底底 向向 上上 方方 法法自自 底底 向向 上上 方方 法法的的 设设 计计 步步 骤

20、骤 抖奥揽沽司桥寒蛔卞材酝梨粹岗抢表龟志裳嫩绢心玄凌国缅疏夺泻逛窜瘟第8章数据库设计第8章数据库设计8.2.2 概念结构设计概念结构设计n3.3.数据抽象与局部数据抽象与局部E-RE-R模型设计模型设计n(1 1)数据抽象)数据抽象n分类分类:定义:定义某一类概念某一类概念作为作为现实世界现实世界 中一组对象的中一组对象的类型类型,将一组将一组具有具有某些共某些共 同特性和行为的同特性和行为的对象对象抽象为抽象为一个一个实体实体, 对象和实体间是对象和实体间是“is-member-ofis-member-of”关系。关系。n聚集聚集:定义定义某个类型的某个类型的组成成分组成成分。将对象的类型的

21、。将对象的类型的组组成成成分成分抽象为抽象为实体实体的属性。的属性。抽象抽象了对象内部类型和成分了对象内部类型和成分的的“is-part-ofis-part-of”n概括概括:定义定义类型间一种子集联系。类型间一种子集联系。 n(2 2)局部视图设计)局部视图设计n选择选择好一个好一个局部应用局部应用后,就要对每个后,就要对每个 局部应用局部应用逐一设计逐一设计分分E-RE-R图。图。 研研 究究 生生本本 科科 生生专专 科科 生生 中中 小小 学学 生生谷臂蔬盐裁甭溪否开殷哑辕掠崎替勒橱屠硝谭蛛受嗽犀训痰唯碉孽董处慰第8章数据库设计第8章数据库设计8.2.2 概念结构设计概念结构设计n实体

22、和属性实体和属性是相对的,常要是相对的,常要根据根据实际情况实际情况进行进行必要必要调整调整,在,在调整调整时要遵守时要遵守两条原则两条原则:n属性属性不能不能再有需要再有需要描述描述的的性质性质, ,即属性必须是即属性必须是不可分不可分的数据项的数据项. .n属性属性不能不能与其他实体具有与其他实体具有联系联系。联系联系只发生在只发生在实体之间实体之间。n【案例案例5-15-1】设有如下】设有如下实体实体:n学生学生:学号、系名称、姓名、性别、年龄、选修课程名:学号、系名称、姓名、性别、年龄、选修课程名n课程课程:编号、课程名、开课单位、任课教师号:编号、课程名、开课单位、任课教师号n教师教

23、师:教师号、姓名、性别、职称、讲授课程编号:教师号、姓名、性别、职称、讲授课程编号n单位单位:单位单位名称、电话、教师号、教师姓名名称、电话、教师号、教师姓名n实体中实体中存在存在如下如下联系联系:n(1 1)一个)一个学生学生可可选修选修多门课程,一门课程可为多个学生多门课程,一门课程可为多个学生选修选修n(2 2)一个)一个教师教师可可讲授讲授多门课程,一门课程可为多个教师多门课程,一门课程可为多个教师讲授讲授n(3 3)一个)一个系系可可有有多个教师,一个教师只能多个教师,一个教师只能属于属于一个系一个系宏锻符找甘皑胜垣禾聚芽短苫拿红腻蔡搐腰呛包牡围瓣经萝函您茹氧轮浩第8章数据库设计第8

24、章数据库设计8.2.2 概念结构设计概念结构设计学学 生生 选选 课课 局局 部部E - R图图 教教 师师 任任 课课 局局 部部E - R图图 曰贝蒸换萤锐嚣陶轰碍紧迈织垃掂惺同煌表淹也捅呸掂缀涉偏菠协宏炉档第8章数据库设计第8章数据库设计8.2.2 概念结构设计概念结构设计n4 4、全局、全局E-RE-R模型设计模型设计n各个各个局部视图局部视图即即分分E-RE-R图图建立建立好后,好后,还要还要对其对其进行合并进行合并,集成集成为为一个一个整体整体的的概念数据结构概念数据结构即即全局全局E-RE-R图。图。 n(1)(1)一次集成法:一次一次集成法:一次集成集成多个多个简单简单局部局部

25、E-RE-R图。图。n(2)(2)逐步累积式逐步累积式n不管用哪种方法,集成局部E-R图都分为两个步骤两个步骤两个步骤两个步骤:n(1 1)合并合并n解决各个局部E-R图之间的冲突,将各个局部E-R图合并起来生成初步E-R图nE-R图中的冲突冲突冲突冲突有有有有3 3 3 3种种种种:属性冲突、命名冲突、结构冲突。 n(2 2)修改与重构修改与重构:消除消除不必要的不必要的冗余冗余,生成生成基本基本E-RE-R图图n在在形成形成初步初步E-RE-R图图后,后,消除消除冗余冗余 联系联系,便可,便可得到得到基本基本E-RE-R模型。模型。 视视 图图 的的 集集 成成视视 图图 的的 集集 成成

26、 话掂识乃佑化导窘扮瘩报于哺述僻扳币幽耐伴尾尧仰匝晰武奔烦谎惹期屿第8章数据库设计第8章数据库设计生成初步生成初步E-R图图n【案例案例5-25-2】以】以教务管理系统教务管理系统中的两个中的两个分分E-RE-R图图为例,说明如何为例,说明如何消除消除各各分分E-RE-R图图之间的之间的冲突冲突,进行进行分分E-RE-R模型模型的的合并合并,从而,从而生成生成初步初步E-RE-R图图。n(1 1)两个分两个分E-RE-R图中图中存在着存在着命名冲突命名冲突, ,学生选课局部学生选课局部- -图中图中的的实体型实体型“系系”与教师任课与教师任课局部局部- -图图中的中的实体型实体型“单位单位”,

27、 ,都是指都是指“系系”,即所谓的,即所谓的异名同义异名同义,合并后统一改为,合并后统一改为“系系”, ,这样属性这样属性“名称名称”和和“单位名单位名”即可统一为即可统一为“系名系名”. .n(2 2)还还存在着存在着结构冲突结构冲突,实体型实体型“系系”和和“课程课程” 在两个在两个不不同同应用中的属性应用中的属性组成组成不同不同,合并后合并后这两这两实体实体的属性的属性组成为组成为原来原来分分E-RE-R图图中的同名中的同名实体属性实体属性的的并集并集。解决解决上述冲突后上述冲突后,合并合并两两个个分分E-RE-R图图,生成生成如图如图5-185-18所示的所示的初步总初步总E-RE-R

28、图图。 咆蹿魁嫌吐仇蛤席疆蒂换淑结础屹腐沪酶谢措贩纵妨着退睬录母粤恒娱虱第8章数据库设计第8章数据库设计优化后的基本优化后的基本E-R图图 爹暖恳睛绷力箭掐题呵烹恕贫妓扒郧岂殴巷按逮揩沂柱匣安墓橇河劝铬臂第8章数据库设计第8章数据库设计用分析法消除数据冗余用分析法消除数据冗余,生成基本生成基本E-R图图n【案例案例5-35-3】以】以教务管理系统教务管理系统中的中的合并合并E-RE-R图图为例为例,说明说明如如何何消除消除不必要的不必要的冗余冗余,从而,从而生成生成基本基本E-RE-R图图。n在在初步初步E-RE-R图图中,中,“课程课程”实体型实体型中的属性中的属性“教师号教师号”可由可由“

29、讲授讲授”教师与课程之间的教师与课程之间的联系联系导出导出,而学生的,而学生的平均成绩平均成绩可由可由“选修选修”联系联系中的属性中的属性“成绩成绩”中中计算出来计算出来,所以,所以“课程课程”实体实体型型中的中的 “教师号教师号” 与与“学生学生”实体型实体型中的中的“平均成绩平均成绩”均均属属于于冗余数据冗余数据。n另外,另外,“系系”和和“课程课程”之间的之间的联系联系“开课开课”,可以,可以由由“系系”和和“教师教师”之间的之间的“属于属于”联系联系与与“教师教师”和和“课程课程”之间的之间的“讲授讲授”联系联系推导出来推导出来,所以,所以“开课开课”属于属于冗余联系冗余联系。n这样,

30、这样,初步初步E-RE-R图图在在消除消除冗余数据冗余数据和和冗余联系冗余联系后,后,便可得到便可得到基基本的本的E-RE-R图图,如图,如图5-195-19所示。所示。立檬良夫甩荚乐但荒舒厘咏徊肮柜俺珠损招眯抄乃证锗肯宇咕搞闯豆圾身第8章数据库设计第8章数据库设计初步的全局初步的全局E-R图图 勃禽蛹堕盈屎甘椒豪义装州汽替椒府免狂良溪将诈戍绵银苞出洋碟厨迫赁第8章数据库设计第8章数据库设计8.2.3 逻辑结构设计逻辑结构设计n1 1、逻辑结构设计的任务和步骤、逻辑结构设计的任务和步骤n逻辑结构设计逻辑结构设计的的任务任务:概念结构概念结构是各种是各种数据模型数据模型的的共同基础共同基础。为了

31、为了能够用能够用某一某一DBMSDBMS实现实现用户需求,还须将用户需求,还须将概念结构概念结构进一步进一步转转化化为为相应的相应的数据模型数据模型。n逻辑结构设计逻辑结构设计分为分为3 3个个步骤步骤(如图(如图5-165-16)n(1 1)将)将概念结构概念结构转化转化为为数据模型数据模型(关系、网状、层次关系、网状、层次)。n(2 2)将)将转化的转化的模型模型向向特定特定DBMSDBMS支持下的支持下的数据模型数据模型转换转换。n(3 3)对)对数据模型数据模型进行进行优化优化(规范化)(规范化)。库表库表库表库表结构设计结构设计,应用程序应用程序应用程序应用程序结构设计结构设计 (逻

32、辑库结构逻辑库结构) (系统结构系统结构)转转 化化转转 化化优优 化化招弦蓖销盆莉跪鬃氓忧构沧已涛格碰嘶弹尔膳郸谰狞珊姿烈泞拎链室谓歪第8章数据库设计第8章数据库设计8.2.3 逻辑结构设计逻辑结构设计n2 2、初始化关系模式设计、初始化关系模式设计n(1 1)转换原则转换原则n1 1)一个)一个实体实体转换转换为一个为一个关系模式关系模式。n2 2)一个)一个m:nm:n联系联系转换为转换为一个一个关系模式关系模式。n3 3)一个)一个1:n1:n联系联系可以可以转换为转换为一个一个关系模式关系模式. .n4 4)一个)一个1:11:1联系联系可以可以转换为转换为一个一个独立独立关系模式关

33、系模式。n5 5)三个或以上)三个或以上实体间实体间的一个的一个多元联系多元联系转换为转换为一个一个关系模式关系模式. .n(2 2)具体做法具体做法n1 1)将一个)将一个实体实体转换为转换为一个关系一个关系. .先先分析分析该该实体实体属性属性,从中,从中确定确定主主键键,然后再将其,然后再将其转换为转换为关系模式关系模式;n2 2)把每个)把每个联系联系转换成转换成关系模式关系模式;n3 3)三个或以上实体间的一个)三个或以上实体间的一个多元多元联系联系在在转换为转换为一个关系模式时一个关系模式时, ,与该与该多元联系多元联系相连相连的的各实体的各实体的主键主键及联系本身的及联系本身的属

34、性属性均均转换成为转换成为关系的关系的属性属性, ,转换后转换后所有所有得到得到的关系的的关系的主键主键为各为各实体键实体键的组合的组合。ERER图图图图基本表基本表基本表基本表( (二维二维二维二维) )货货 物物企企 业业运运 送送生产生产储存储存销售销售课课 堂堂 练练 习习课课 堂堂 练练 习习瓜氟填裂牢槐溢掺沂腻馈具姨帖华深间尝镶飘兵处透厌店示息坏狄掣次缚第8章数据库设计第8章数据库设计8.2.3 逻辑结构设计逻辑结构设计n【案例案例5-45-4】以图为例将以图为例将4 4个个实体实体分别转换分别转换 为关系模式(带为关系模式(带 为为主键主键):):n学生(学生(学号学号,姓名,性

35、别,年龄),姓名,性别,年龄)n课程(课程(课程号课程号,课程名),课程名)n教师(教师(教师号教师号,姓名,性别,职称),姓名,性别,职称)n系(系(系名系名,电话),电话)n【案例案例5-55-5】把图中】把图中4 4个个联系联系转换成转换成关系模式:关系模式:n 属于(属于(教师号教师号,系名系名); ; 讲授(讲授(教师号教师号,课程号课程号)n 选修(选修(学号学号,课程号课程号,成绩),成绩); ;拥有(拥有(系名系名,学号),学号)n【案例案例5-65-6】供应商、项目和零件三个】供应商、项目和零件三个实体实体之间的多对多联系之间的多对多联系, ,如果已知三个如果已知三个实体的实

36、体的主键主键分别为分别为“供应商号供应商号”,“”,“项目号项目号”与与“零件号零件号”,”,则其之间联系则其之间联系“供应供应”转换为转换为关系模式关系模式( (下图下图):):n供应供应( (供应商号供应商号, ,项目号项目号, ,零件号零件号, ,数量数量) )n【案例案例5-75-7】职工管理系统职工管理系统全局全局E ER R模型模型n进行关系模型的进行关系模型的转化转化。宜噎圣幢勇送越再嗓行辆奔硫痈冉痹剃芳库癌宋辽检硷认权输釉乐遂恶曝第8章数据库设计第8章数据库设计8.2.3 逻辑结构设计逻辑结构设计n*3*3、关系模式的规范化、关系模式的规范化n关系模型优化关系模型优化常以常以规

37、范化理论规范化理论为为基础基础。方法方法:n1.1.确定确定数据依赖数据依赖,按按需求分析阶段需求分析阶段所得的所得的要求,分别要求,分别写出写出每个每个关系模式关系模式内部各属性之间的内部各属性之间的数据依赖,数据依赖,以及不同以及不同关系模式关系模式属性属性之间之间数据依赖数据依赖。如如 企业企业-产品产品, ,产品产品-价格价格n2.2.优化优化处理处理。对于各。对于各关系模式关系模式之间之间数据依赖数据依赖进行进行极小化处理极小化处理, ,消除消除冗余的联系冗余的联系。n3.3.确定确定范式。范式。按按数据依赖数据依赖的理论对的理论对关系模式关系模式逐一逐一进行进行分析分析,考考查查是

38、否是否存在存在部分函数依赖、传递函数依赖、多值依赖等,部分函数依赖、传递函数依赖、多值依赖等,确定确定各各关系模式关系模式分别属于第几范式分别属于第几范式。如如 企业企业-价格价格n4.4.合并分解。合并分解。按按需求分析需求分析的的各种应用对各种应用对数据处理数据处理的要求,的要求,分析分析对此对此应用环境应用环境模式模式是否合适,是否合适,确定确定是否要是否要进行合并进行合并或或分解分解。n8.8.按按需求分析需求分析的的各种应用对各种应用对数据处理数据处理的要求,对的要求,对关系模式关系模式进行进行必要必要分解或合并分解或合并, ,以以提高提高数据操作数据操作效率效率和和存储空间存储空间

39、利用率利用率. .疆维窜根板邀迂州扭诗塌誉愚翌暗灶责幢背望秽缠喻暑趣寒柑悦鸿杆闻针第8章数据库设计第8章数据库设计8.2.3 逻辑结构设计逻辑结构设计n4 4、关系模式的评价与改进、关系模式的评价与改进n(1 1)模式的评价)模式的评价n对对模式的评价模式的评价包括包括设计设计质量质量评价评价和和性能性能评价评价两个两个方面。方面。n(2 2)数据模式的改进)数据模式的改进n1 1)分解)分解n关系模式的分解关系模式的分解一般一般分为分为水平分解水平分解和和垂直分解垂直分解两种两种. .n2 2)合并)合并n具有具有相同相同主键主键的的关系模式关系模式,对此,对此关系模式关系模式的的处理处理主

40、主要是要是多关系多关系的的查询操作,查询操作,可此可此关系模式关系模式 按照按照组合频率组合频率合并合并合并合并。玄菠秒攘会癣愈袋驻庚珠墒真院缀肤秃呆臆届瘤蜒婶媒矢洛儿靴举虫永尽第8章数据库设计第8章数据库设计8.2.4 数据库物理设计数据库物理设计n n 任务任务任务任务为为数据库数据库逻辑模式逻辑模式( (结构结构) )选择选择适合应用环境的适合应用环境的物理物理结构结构,即,即确定确定有效地有效地实现实现逻辑模式逻辑模式的的数据库数据库存储模式存储模式,确定确定在物理设备上在物理设备上所采用所采用的的存储结构存储结构和和方法方法,然后,然后对对该该存储模式存储模式进行进行性能评价、修改设

41、计性能评价、修改设计. . n1.1.确定物理结构确定物理结构n 数据库物理设计数据库物理设计内容内容包括包括记录记录存储结构存储结构的的设计设计,存储路径存储路径的的设设计计,记录,记录聚集(集簇)索引聚集(集簇)索引的的设计设计。n(1 1)记录存储结构的设计:)记录存储结构的设计:设计设计存储记存储记n录录结构形式结构形式,涉及涉及不定长不定长数据项数据项表示表示。n(2 2)关系模式的存取方法选择)关系模式的存取方法选择n DBMS DBMS常用常用存取方法存取方法:B+B+树索引方法、聚簇方法、树索引方法、聚簇方法、HASHHASH方法。方法。B+B+树树中中节点节点表示为一组表示为

42、一组有序元素和子指针有序元素和子指针 ( 后 面 )鸣痕汛戳饲痞斋笑黑儒刑天璃暮刨摘棚搬锐滤惮辫块垂悉霉梯罚固逢孙歇第8章数据库设计第8章数据库设计8.2.4 数据库物理设计数据库物理设计n1 1)索引方法)索引方法n索引存取方法索引存取方法主要主要内容内容:对哪些:对哪些属性列属性列建立建立索引,索引,建立建立组合组合(复合)索引(复合)索引或或唯一索引唯一索引。n2 2)聚簇)聚簇- -聚集(集簇)索引n为了为了提高提高某属性某属性( (组组) )查询速度查询速度, ,将其属性将其属性( (称为称为聚簇码聚簇码) )上具有上具有相相同值同值的的元组元组集中存放集中存放在连续的在连续的物理块

43、物理块称为称为聚簇聚簇。聚簇。聚簇用途用途极大极大提高提高按聚簇属性按聚簇属性进行查询进行查询的效率。的效率。n3 3)HashHash方法方法 属性属性出现出现等值连接等值连接/ /相等相等比较比较选择条件;关系大小预知不变选择条件;关系大小预知不变/ /提提供动态供动态HashHash存取法。存取法。n2.2.评价物理结构评价物理结构n 在在确定了确定了数据库数据库物理结构物理结构后后, ,要要进行评价进行评价, ,重点重点是时间和空间的是时间和空间的效率效率。如果。如果评价评价结果结果满足满足设计要求,则可设计要求,则可进行进行数据库数据库实施实施, ,实际上实际上常需要常需要经过反复测

44、试经过反复测试才能才能优化物理设计。优化物理设计。物以类聚物以类聚 盟莫超疗栋倾聋肋止眯催眶漱炉肃尉鉴基耿哆醛凑餐呛惭腥炯组曹联驶掏第8章数据库设计第8章数据库设计8.2.5 数据库实施数据库实施n n 数据库实施(实现)数据库实施(实现)数据库实施(实现)数据库实施(实现)是指是指根据根据逻辑设计逻辑设计和和物理设计物理设计的的结果结果,在计算机上,在计算机上建立建立实际的实际的数据库结构数据库结构- -程序程序, ,装入装入数据数据, ,进行进行测试和试运行的测试和试运行的过程过程。数据库实施数据库实施的的内容内容:用:用DDLDDL定定义义数据库及表结构数据库及表结构,组织组织数据输入,

45、数据输入,编制编制与与调试调试应用程序,应用程序,数据库数据库试运行。试运行。 n1.1.建立建立数据库及表结构数据库及表结构n2.2.输入输入数据数据n3.3.编制与调试编制与调试应用程序应用程序n4.4.数据库数据库试运行试运行n8.8.整理整理文档文档篮啃颂砾挫裕祁驯砍朝依症仗亿痞翱拒蛾畅琴呆荚葵焊虾烫分颧济贫请茎第8章数据库设计第8章数据库设计8.2.6 数据库运行和维护数据库运行和维护n n 数据库试运行数据库试运行数据库试运行数据库试运行结果结果符合符合设计目标后,设计目标后,数据库数据库就可就可真正真正投入运行投入运行。数据库数据库投入运行投入运行标志着标志着开发任务的开发任务的

46、基基本完成本完成和和维护工作维护工作的的开始开始,对,对数据库设计数据库设计进行进行评价、评价、调整、修改调整、修改等等维护工作维护工作是一个长期的任务,也是是一个长期的任务,也是设计设计工作工作的的继续和提高继续和提高过程过程。n1.1.数据库数据库的的安全性、完整性安全性、完整性n2.2.监视并改善监视并改善数据库数据库性能性能n3.3.数据库数据库的的重组织重组织和和重构造重构造献树圣辰任秉捌牲粉屑皆奠癌落拿熬暮晤剂晴菲意霓缠拓丙拽谈榴宰敲细第8章数据库设计第8章数据库设计8.3数据库设计文档数据库设计文档n 数据库设计文档数据库设计文档即即数据库设计说明书数据库设计说明书 , ,根据根

47、据GB8567-88GB8567-88软软件件规范标准规范标准 n1 1、引言、引言n(1 1)编写目的)编写目的n(2 2)背景)背景n(3 3)定义)定义n(4 4)参考资料)参考资料n2 2、外部设计、外部设计n(1 1)标识符和状态)标识符和状态n(2 2)使用它的程序)使用它的程序n(3 3)约定)约定n(4 4)专门指导)专门指导n(5 5)支持软件)支持软件n3 3、结构设计、结构设计n(1 1)概念结构设计)概念结构设计n(2 2)逻辑结构设计)逻辑结构设计n(3 3)物理结构设计)物理结构设计n4 4、运用设计、运用设计n(1 1)数据字典设计)数据字典设计n(2 2)安全保

48、密设计)安全保密设计骆骆伸蜀抱殆耸幻庇左渐缴葡克窿俄荣龟肪圾毡增骤掐圃纽狂陨溃懂来昆第8章数据库设计第8章数据库设计8.4 数据库应用系统设计案例数据库应用系统设计案例数据库应用系统设计案例数据库应用系统设计案例数据库应用系统设计案例数据库应用系统设计案例n 通过分析通过分析高校高校“学籍管理系统学籍管理系统”设计设计案例案例, ,按照按照数据库系数据库系统统开发开发步骤步骤进行进行数据库数据库概念结构设计、逻辑结构设计、物理结概念结构设计、逻辑结构设计、物理结构设计构设计, ,使学生使学生掌握掌握数据库应用软件的数据库应用软件的开发流程开发流程,SQLSQL语句的语句的综综合应用合应用和存储

49、过程的和存储过程的使用使用。 用户及有关信息用户及有关信息n 本系统是本系统是针对针对高等院校的学生高等院校的学生学籍管理学籍管理,因此,因此学籍管理系学籍管理系统统的的用户用户包括包括系统管理员、教师和学生系统管理员、教师和学生。主要涉及主要涉及数据数据系部信系部信息、班级信息、任课教师信息、学生信息、课程信息以及选课息、班级信息、任课教师信息、学生信息、课程信息以及选课记录和成绩等记录和成绩等多种多种数据信息数据信息。越僵感跺氦鞍等马张芋联黎遂警淡匿万综镣夕卷新溢积坡袱加软又狼耽谦第8章数据库设计第8章数据库设计用户需求用户需求 1. 1.主要功能主要功能n(1 1)基本信息管理)基本信息

50、管理系统管理员系统管理员负责对负责对各种各种基本信息基本信息的的录入、修录入、修改、删除改、删除等操作。等操作。n(2 2)学生成绩管理)学生成绩管理系统管理员系统管理员负责对负责对学生成绩学生成绩的的录入、修改、录入、修改、删除删除等操作,学生可以等操作,学生可以查询查询各科各科成绩成绩。n(3 3)信息查询统计)信息查询统计学生可以学生可以查询查询基本信息基本信息和各科的和各科的考试成绩考试成绩,老师可以老师可以查询查询基本信息基本信息和和授课信息授课信息,系统管理员,系统管理员负责把负责把老师老师提交提交的的学学生成绩生成绩进行管理进行管理,计算计算总成绩总成绩和和平均成绩平均成绩,统计

51、统计不及格学生信息和不及格学生信息和获获得得奖学金学生的信息,最后奖学金学生的信息,最后再输出再输出所有的信息。所有的信息。n(4 4)毕业生信息管理)毕业生信息管理系统管理员系统管理员负责计算负责计算毕业学生在学校期间毕业学生在学校期间所修课程的总学分,并所修课程的总学分,并进行进行审核审核,最后,最后输出输出登记表和名册。登记表和名册。n(5 5)系统用户管理)系统用户管理系统管理员系统管理员负责用负责用不同的不同的权限权限来来限制限制不同用不同用户对系统的户对系统的使用使用。n用户用户还要求还要求系统系统效率高效率高,查询查询速度快速度快,较小的较小的冗余冗余,易易维护维护,具有,具有较

52、较高数据安全性高数据安全性。呕拦另客蕊能户曾哪汝瘴看翰向裁月贯兄饯奇租廖秉捻侍澡漓伐哟锥毙婪第8章数据库设计第8章数据库设计系统功能要求系统功能要求2.2.系统功能模块系统功能模块 模块模块划分划分 系统系统功能结构图功能结构图3.3.数据字典数据字典( (P112-115P112-115) )4.4.处理过程处理过程( (P115-116P115-116) ) 概念结构设计概念结构设计 逻辑结构设计逻辑结构设计 物理结构设计及实现物理结构设计及实现学学 生生教师教师 管理员管理员学生记录学生记录成成 绩绩毕业毕业送进信息录入录入查询查询计算计算统计统计更新更新录入录入新生新生学学生生信信息息

53、批批准准成成绩绩单单批批准准核核对对信信息息学生名单学生名单提提交交申申请请审审核核信信息息合格合格援口沽翘旭谐馋痘墅纲炉丈拈水笨掏讲启泅凭铀照坐作便千混翔耕赐仕老第8章数据库设计第8章数据库设计8.5 本章小结本章小结n 本章本章讲述了讲述了数据库数据库应用应用设计设计( (开发开发) )过程过程,共分,共分6 6个阶段个阶段:需求分析、:需求分析、概念设计、逻辑设计、物理设计、数据库实施和数据库使用与维护概念设计、逻辑设计、物理设计、数据库实施和数据库使用与维护n 可以可以通过通过跟班作业、开会调查、专人介绍、用户填表、查阅记录等跟班作业、开会调查、专人介绍、用户填表、查阅记录等方法方法调

54、查调查用户需求用户需求、通过通过编制组织机构图、业务关系图、数据流图和数编制组织机构图、业务关系图、数据流图和数据字典等据字典等方法方法来来描述和分析描述和分析用户需求用户需求。n ( (1 1) )概念设计概念设计是数据库设计的是数据库设计的核心环节核心环节,是在用户需求,是在用户需求描述与分析描述与分析的的基础上对现实世界(业务)的抽象和模拟。基础上对现实世界(业务)的抽象和模拟。n ( (2 2) )逻辑设计逻辑设计是在是在概念设计概念设计的的基础基础上,将上,将概念模型概念模型转换成转换成所选用的具所选用的具体的体的DBMSDBMS支持的支持的数据模型数据模型的逻辑模式。的逻辑模式。n

55、 ( (3 3) )物理设计物理设计的的任务任务任务任务是是确定确定有效有效实现实现逻辑模式逻辑模式的的存储模式存储模式,确定确定在物在物理设备上理设备上所采用所采用的的存储结构存储结构和和存取方法存取方法,然后,然后进行进行性能评价、修改设计,性能评价、修改设计,经过经过多次反复,最后多次反复,最后得到得到一个性能较好的一个性能较好的存储模式存储模式. .n 数据库数据库的的实施过程实施过程包括数据载入、应用程序调试、包括数据载入、应用程序调试、数据库数据库试运行等试运行等几个步骤几个步骤n 数据库数据库运行与维护阶段运行与维护阶段主要工作主要工作有有数据库数据库安全和完整性安全和完整性控制控制、数据数据库库的的转储和恢复转储和恢复、数据库数据库性能性能监控分析与改进监控分析与改进、数据库数据库的的重组和重构重组和重构等等盗荫郊嚏丽獭钙裂香蠢洼芬理粟些扇笔垒喘涉邦逝抽澎呢他僵涡读劣泉战第8章数据库设计第8章数据库设计数数 据据 库库 原原 理理 及及 应应 用用航骤诅枯裁谨诅淋后车类躇缩瞄霜钓衣搓嘘袖伐狱物哪皂哄板载梗波价贮第8章数据库设计第8章数据库设计

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号