17数据库课程设计指导书

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第一讲:数据库设计概述、规划、需求分析课时:2课时教学课型:理论课教学目的要求:理解数据库设计的基本内容,了解数据库规划及需求分析的具体方法。教学重点与教学难点:需求分析的步骤1数据库设计概述数据库设计是指:在给定的应用环境下,创建一个性能良好的能满足不同用户使用要求的,又能被选定的DBMS所接受的数据格式。数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建设中的核心技术。1.1数据库设计的内容与特点数据库设计两个方面:结构特性的设计与行为特性的设计结构特性设计——数据库框架和数据库结构设计行为特性设计——应用程序设计,如查询、报表处理,一般由面向对象的程序给出用户操作界面。数据库结构设计与行为设计要相互参照,它们组成统一的数据库工程。1.2数据库设计方法新奥尔良方法分为四个阶段:需求分析、概念设计、逻辑设计、物理设计。具体的实现技术与实现方法:如基于E—R模型的数据库设计方法(针对概念结构设计阶段),基于3NF的设计方法,基于抽象语法规范的设计方法。规范设计法分为两种:手工设计和计算机辅助设计(如OracleDesigner2000、RationalRose,它们可以帮助或者辅助设计人员完成数据库设计中的很多任务)。企业物理设计数据分析程序设计说明事务设计应用程序设计子模式设计逻辑模型设计加载测试数据程序调试考核性能功能分析投入运行维护概念模型设计满意YN图1数据库设计过程1.3数据库设计的步骤三个阶段:总体规划,系统开发设计,系统运行和维护。具体步骤:1.数据库规划阶段(总体目标和技术路线,得出数据库设计项目的可行性分析报告;对数据库设计的进度和人员分工做出安排)2.需求分析阶段(弄清用户要求,是基础。影响到数据库设计的结果是否合理与实用)3.概念结构设计阶段(独立于计算机的数据模型,独立于特定的DBMS。它通过对用户需求综合、归纳抽象、形成独立于具体DBMS的概念模型。是各用户关心的系统信息结构,方便与用户交流,是对现实世界的第一层抽象)。现实世界(事物及其联系)概念模型(实体及其联系)数据模型(数据及其联系)现实世界信息世界计算机世界图9-3信息的三个世界图2数据库设计步骤需求分析概念结构设计逻辑结构设计物理结构设计数据库实施与维护数据库规划4.逻辑结构设计阶段(转换为某个DBMS所支持的数据模型,并进行优化)5.物理结构设计阶段(设计一个在限定的软、硬件条件和应用环境下可实现的,运行效率高的物理数据库结构)6.数据库实施与维护阶段(根据逻辑结构设计及物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行)2数据库规划规划过程:1.系统调查:调查,就是要搞清楚企业的组织层次,得到企业的组织结构图。2.可行性分析:从经济、法律、技术等多方面进行可行性论证分析,在此基础上得到可行性报告。3.数据库建设的总体目标和数据库建设的实施总安排3需求分析3.1需求分析的任务需求分析的任务是通过详细调查现实世界要处理的对象(部门、企业)充分了解原系统(手工系统或老计算机系统)工作概况,明确各用户的各种需求,在此基础上确定新的功能。新系统的设计不仅要考虑现时的需求还要为今后的扩充和改变留有余地,要有一定的前瞻性。3.2需求分析的方法四步:1.调查组织机构情况。2.调查各部门的业务活动情况。3.协助用户明确对新系统的各种要求。4.最后对前面调查结果进行初步分析,确定系统的边界。调查方法:(1)跟班作业。(2)开调查会。(3)查阅档案资料。(4)询问。(5)设计调查用表请用户填写。3.3需求分析的步骤分析四步:分析用户的活动、确定新系统功能包括的范围、分析用户活动所涉及的数据、分析系统数据。1.分析用户的活动2.确定系统的边界在上述用户活动图中确定计算机与人工分工的界线3.分析用户活动所涉及的数据在处理功能逐步分解的同时,他们所用的数据也逐级分解形成若干层次的数据流图。数据流图(DFD,DataFlowDiagram):从数据流的角度描述一个组织业务活动的图,从数据和数据加工两方面来表达数据处理系统工作过程,是用户和设计人员都能容易理解的一种表达系统功能的描述方式。a.用上面带有名字的箭头表示数据流,b.用标有名字的圆圈表示数据的加工处理,c.用直线表示文件(离开文件的箭头表示文件读、指向文件的箭头表示文件写),d.用方框表示数据的源头和终点。图4图书发行企业部分业务用户活动图接受申请查图书信息接受申请打印图书目录查询图书公布接受处理查书店信息请查图书信息生成订单计算赔款书店订书交有关部门打印订单4.分析系统数据数据字典(DD,DataDictionary)是进行详细的数据收集与分析所得到的主要成果,是(B)书店订购图书处理数据流图订购请求书店订购图书:生成订单书店订单图6图书管理系统内部用户活动图对应的各数据流图图书作者出版社查询处理工科图书查询请求打印图书数据图书数据图书查询:(A)查询图书数据流图图书作者出版社S1P1P2XYXZXF1图5一个简单的数据流图对数据流图中出现的所有数据元素给出逻辑定义和描述,也是数据库设计者与用户交流的又一个有力工具,可以供系统设计者,软件开发者、系统维护者和用户参照使用。四个部分:⑴数据项数据项描述={数据项名,别名,数据项含义,数据类型,字节长度,取值范围,取值含义,与其它数据项的逻辑关系}表1图书各数据项描述数据项名数据类型字节长度图书编号字符6书名字符80评论字符200出版社标识字符4价格数字8出版日期日期8图书类别字符12⑵数据文件数据文件描述={数据文件名,组成数据文件的所有数据项名,数据存取频度,存取方式}如:图书={组成:图书编号、书名、评论、出版社标识、价格、出版日期、图书类别,存取频度:M次/每天,存取方式:随机存取}⑶数据流数据流描述={数据流的名称,组成数据流的所有数据项名,数据流的来源,数据流的去向,平均流量,峰值流量}⑷数据加工处理数据加工处理描述={加工处理名,说明,输入的数据流名,输出的数据流名,处理要求}思考题:1.简述数据库设计的基本步骤。2.简述需求分析的基本步骤。3.什么是数据字典?它由哪几部分组成?它在数据库系统设计中的作用是什么?4.什么是数据流图?它由哪几部分组成?它在数据库系统设计中的作用是什么?第二讲:概念结构设计与逻辑结构设计课时:2课时教学课型:理论课教学目的要求:了解数据库概念结构设计与逻辑结构设计具体方法。教学重点与教学难点:E-R模型设计及逻辑模式的优化4概念结构设计概念结构设计阶段就是将用户需求抽象为信息结构即概念模型的过程。实体-联系模型(E-R模型,EntityRelationshipModel)为该阶段的设计提供了强有力的工具。首先得到各局部应用的局部E-R图,然后将各局部E-R图集成形成全局的E-R图。4.1设计各局部应用的E-R模型1.分解:分解成若干个子系统,一个局部应用中的实体数不能超过9个。2.制图:通过各局部应用所涉及到的收集在数据字典中的数据,并参照数据流图来标定局部应用中的实体、实体的属性、实体的码、实体间的联系以及它们联系的类型来完成局部E-R模型的设计。3.调整:总体原则是现实中的事物能做“属性”处理的就不要做“实体”对待。决定事物作为属性来对待的准则:a.此事物不能再包含别的属性b.此事物不能与其它实体发生联系(联系只能发生在实体之间)考察E-R图图7图书书名出版日期标识评论出版社标识图书类别价格作者标识作者姓名作者简历联系电话通讯地址出版出版社出版社标识账号联系人姓名出版社名称作者编著作者序号mmn14.2全局E-R模型的设计要求:①完整性和正确性:即整体E-R图应包含局部E-R图所表达的所有语义,完整地表达与所有局部E-R图中应用相关的数据。②最小化:系统中的对象原则上只出现一次。③易理解性:设计人员与用户能够容易理解集成后的全局E-R图。基本集成方法:1、依次取出局部的E-R图进行集成通常是两个关键的局部视图先集成,当然也可以一次集成多个局部E-R图。消除各E-R图中的冲突和不一致是工作的重点和关键所在。冲突主要有三类:⑴属性冲突:包括属性域冲突和属性取值单位冲突。⑵命名冲突:语义相同,命名不同;命名相同语义不同。⑶模型冲突:a.同一对象在不同的局部E-R模型中具有不同的抽象b.同一实体在不同的局部E-R模型中所包含的属性个数和属性排列顺序不完全相同。c.实体之间的联系在不同的局部E-R模型中具有不同的联系类型。2.检查集成后的E-R模型图,消除模型中的冗余数据和冗余联系。冗余表现:在初步集成的E-R图中,可能存在可由其它别的所谓基本数据和基本联系导出的数据和联系。(分析谢韵芝的“考试”)冗余数据和冗余联系:能够被导出的数据和联系。危害:容易破坏数据的完整性,给数据的操作带来困难和异常。有意冗余:适当的冗余能起到空间换时间的效果(如:在工资管理中)(分析谢韵芝的n图书书店订购订购数量订购日期订单号m图8书店标识书店名称所在城市地址“College”)集成后的全局E-R模型如图9所示(省略了部分实体的属性)5逻辑结构设计目标:全局E-R图转换成DBMS支持的数据模型(层次、网状、关系)。选DBMS方法:先选数据模型,再选支持该数据模型的DBMS。选DBMS因素:技术、经济、组织逻辑结构设计三步:①将概念结构转换为一般的关系、网状或层次模型。②将转换来的关系、网状、层次模型向DBMS支持下的数据模型转换,变成合适的数据库模式。③对模式进行调整和优化。5.1E-R图向关系模型的转换原则:⑴一个实体型就转换成一个关系模式,实体名成为关系名,实体的属性成为关系的属性,实体的码就是关系的码。如图9-9中:图书(图书标识,出版社标识,评论,价格,出版日期,图书类别,书名)⑵对于一对一的联系,可以将联系转换成一个独立的关系模式,也可以与联系的任意一端对应的关系模式合并。⑶对于一对多的联系,可以将联系转换成一个独立的关系模式,也可以与“多”端对应的关系模式合并。⑷对于多对多的联系,必须将其转换成一个独立的关系模式。新关系模式的键为各实体的键的组合。如:编著关系(图书标识,作者标识,作者序号)订购关系(图书标识,书店标识,订购日期,数量,订单号)⑸对于三个或三个以上实体的多元联系可以转换成一个关系模式。与该联系相连的各实体的键及联系本身的属性均转换成新关系的属性,新关系模式的键为各个实体的键的组合。m图书书店订购数量订购日期订单号图9出版社作者出版编著n1nnnm⑹自联系:可按上述的一对一、一对多、多对多的情况分别加以处理(如职工中的领导和被领导关系)⑺具有相同键的关系可以合并。5.2关系模型向特定的RDBMS的转换依赖于机器,没有一个通用的规则,转换的主要依据是所选定的DBMS的功能及限制5.3逻辑模式的优化优化是在性能预测的基础上进行的。性能一般用三个(定性)指标来衡量:单位时间里所访问的逻辑记录个数的多少;单位时间里数据传送量的多少;系统占用的存储空间的多少。采用关系规范化理论和关系分解方法作为优化设计的理论指导,方法:⑴确定数据依赖。⑵对各个关系模式之间的数据依赖进行极小化处理,消除冗余的联系。⑶对各关系模式进行分析,考察是否存在部分依赖、传递依赖、多值依赖,确定范式。在工程中3NF、BCNF应用得最广泛。(分析黄银芳提交的设计)⑷模式对于这样的应用环境是否合适,确定是否要对某些模式进行合并和分解。现状:现实世界并不总是依从于某一完美的数学化的关系模式缺点:系统进行连接运算,大量的I/O操作使得连接的代价相当高,造成低效率,但非BCNF模式存在更新异常和冗余。原则:需要权衡响应时间和潜在的问题的利弊⑸必要的分解,提高数据操作的效率和存储空间的利用率(水平分解、垂直分解)水平分解:把关系的元组分成若干个子集合,定义每个集合为一个子关系。垂直分解:把关系模式的属性分解成若干个子集合,形成若干个子关系模式。⑹有时为了减少重复数据所占的存储空间,可以采用假属性的办法(如代码化)。5.4外模式的设计外模式是用户看到的数据模式,各类用户有各自的外模式。可以利用一部分基表再加上按需为

1 / 27
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功